Skip to content

Commit 494161c

Browse files
rustyconoverclaude
andcommitted
release: 0.25.1 — dependency bumps, plus green docs and Windows CI
Folds in the three open Dependabot PRs: - #45 GitHub Actions: astral-sh/setup-uv v8.2.0 -> v9.0.0, docker/setup-buildx-action v3 -> v4, docker/login-action v3 -> v4, docker/build-push-action v6 -> v7 - #59 cryptography 49.0.0 -> 50.0.0 - #60 the python-minor-and-patch group (typer, platformdirs, duckdb, numpy, sqlglot, mypy, ruff, ty, mkdocs-material, pymdown-extensions) The lock is a full `uv lock --upgrade`, so it lands a superset of what the individual PRs proposed. vgi-rpc stays pinned at 0.39.1. Two CI failures already red on main are fixed alongside: - Docs (strict): `Worker.resolve_token` linked `[`TokenIdentity`][]`, whose canonical path is a private vgi-rpc module griffe cannot resolve statically. Demoted to a code span and documented what the type is in docs/api/auth.md instead of pointing autorefs at a target that cannot exist. - Windows (3.13 and 3.14): the `resolve_token` example in CLAUDE.md carried an em dash in a comment. pytest_examples pipes example source to ruff with `universal_newlines=True`, which encodes via the locale codec — cp1252 on Windows — and ruff then rejects the stream as invalid UTF-8. Replaced with ASCII. The other non-ASCII doc examples are outside DOC_FILES or marked `# illustrative`, so they are never linted. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
1 parent 372a1aa commit 494161c

9 files changed

Lines changed: 714 additions & 706 deletions

File tree

‎.github/workflows/ci.yml‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ jobs:
3030
- uses: actions/checkout@v7
3131

3232
- name: Install uv
33-
uses: astral-sh/setup-uv@v8.2.0
33+
uses: astral-sh/setup-uv@v9.0.0
3434

3535
- name: Set up Python ${{ matrix.python-version }}
3636
run: uv python install ${{ matrix.python-version }}
@@ -48,7 +48,7 @@ jobs:
4848
- uses: actions/checkout@v7
4949

5050
- name: Install uv
51-
uses: astral-sh/setup-uv@v8.2.0
51+
uses: astral-sh/setup-uv@v9.0.0
5252

5353
- name: Install dependencies
5454
run: uv sync --all-extras
@@ -81,7 +81,7 @@ jobs:
8181
- uses: actions/checkout@v7
8282

8383
- name: Install uv
84-
uses: astral-sh/setup-uv@v8.2.0
84+
uses: astral-sh/setup-uv@v9.0.0
8585

8686
- name: Set up Python 3.14
8787
run: uv python install 3.14
@@ -139,7 +139,7 @@ jobs:
139139
path: vgi-rpc
140140

141141
- name: Install uv
142-
uses: astral-sh/setup-uv@v8.2.0
142+
uses: astral-sh/setup-uv@v9.0.0
143143

144144
- name: Set up Python 3.14
145145
run: uv python install 3.14

‎.github/workflows/docs.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
- uses: actions/checkout@v7
1919

2020
- name: Install uv
21-
uses: astral-sh/setup-uv@v8.2.0
21+
uses: astral-sh/setup-uv@v9.0.0
2222

2323
- name: Set up Python
2424
run: uv python install 3.14

‎.github/workflows/integration.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ jobs:
7676
token: ${{ secrets.GITHUB_TOKEN }}
7777

7878
- name: Install uv
79-
uses: astral-sh/setup-uv@v8.2.0
79+
uses: astral-sh/setup-uv@v9.0.0
8080

8181
- name: Set up Python 3.14
8282
run: uv python install 3.14

‎.github/workflows/release.yml‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ jobs:
3333
- uses: actions/checkout@v7
3434

3535
- name: Install uv
36-
uses: astral-sh/setup-uv@v8.2.0
36+
uses: astral-sh/setup-uv@v9.0.0
3737

3838
- name: Build vgi (sdist + wheel)
3939
run: uv build --sdist --wheel --out-dir dist-vgi .
@@ -108,17 +108,17 @@ jobs:
108108
fi
109109
echo "tags=$tags" >> "$GITHUB_OUTPUT"
110110
111-
- uses: docker/setup-buildx-action@v3
111+
- uses: docker/setup-buildx-action@v4
112112

113113
- name: Log in to GHCR
114-
uses: docker/login-action@v3
114+
uses: docker/login-action@v4
115115
with:
116116
registry: ghcr.io
117117
username: ${{ github.actor }}
118118
password: ${{ secrets.GITHUB_TOKEN }}
119119

120120
- name: Build & push
121-
uses: docker/build-push-action@v6
121+
uses: docker/build-push-action@v7
122122
with:
123123
context: .
124124
file: packages/vgi-fixtures/docker/Dockerfile

‎CLAUDE.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -437,7 +437,7 @@ class MyWorker(Worker):
437437
try:
438438
row = api_keys.lookup(token) # your own store
439439
except ConnectionError as exc:
440-
# "I could not find out" — 503 + Retry-After, not 401.
440+
# "I could not find out" -- 503 + Retry-After, not 401.
441441
raise AuthUnavailableError(str(exc)) from exc
442442
if row is None:
443443
return None # "the credential is unknown"

‎docs/api/auth.md‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,12 @@ require `pip install vgi-python[http]`; JWT authentication additionally requires
1212

1313
::: vgi.auth
1414

15+
## Token introspection
16+
17+
`TokenIdentity` is what [`Worker.resolve_token`][vgi.worker.Worker.resolve_token] returns: a
18+
`principal` plus an optional `token_name`. It lives in a private `vgi-rpc` module, so `vgi.auth`
19+
re-exports it — a worker that implements `resolve_token` never has to name a private import path.
20+
1521
## Secret protocol
1622

1723
::: vgi.secret_protocol

‎pyproject.toml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "vgi-python"
3-
version = "0.25.0"
3+
version = "0.25.1"
44
description = "Vector Gateway Interface - Connect DuckDB to external programs via Apache Arrow"
55
readme = "README.md"
66
keywords = [

‎uv.lock‎

Lines changed: 695 additions & 693 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎vgi/worker.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1433,7 +1433,7 @@ def resolve_token(cls, token: str) -> TokenIdentity | None:
14331433
asker may itself have rejected.
14341434
14351435
Returns:
1436-
A [`TokenIdentity`][] whose ``principal`` is in the exact form
1436+
A ``TokenIdentity`` whose ``principal`` is in the exact form
14371437
this worker would derive itself, or ``None`` when the credential
14381438
does not resolve. Never claims: a pass-through claims field would
14391439
let a worker choose its caller's tenant routing and policy branch.

0 commit comments

Comments
 (0)