From 4c5a7670ccd732865729cf5066fddd2b34cdadbc Mon Sep 17 00:00:00 2001 From: Joel Natividad <1980690+jqnatividad@users.noreply.github.com> Date: Wed, 14 Oct 2026 19:08:34 -0400 Subject: [PATCH] build: qsv 25.0.0 in the image, qsv-client >= 0.3.0 qsv 25.0.0 is the first release with structured JSON errors (QSV_ERROR_FORMAT=json, dathere/qsv#4765) and --capabilities, which qsv-client reads for typed errors and the version check; on 24.0.0 both fell back to plain text. uv.lock had qsv-client 0.1.0. 0.2.0 bounds a timeout even when a process qsv started holds the pipes open; 0.3.0 resolves a relative stdout_path against cwd=, which doesn't affect us (AsyncQsv is built without cwd=). Co-Authored-By: Claude Opus 5.5 --- Dockerfile | 2 +- pyproject.toml | 2 +- uv.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Dockerfile b/Dockerfile index d507474..887163f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -17,7 +17,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ # TARGETARCH is supplied automatically by BuildKit. The release ships one zip # per architecture holding several build variants; only the full "qsv" binary # has describegpt, so that is the one extracted (qsvlite omits it). -ARG QSV_VERSION=24.0.0 +ARG QSV_VERSION=25.0.0 ARG TARGETARCH=amd64 RUN set -eux; \ case "${TARGETARCH}" in \ diff --git a/pyproject.toml b/pyproject.toml index 7c70180..31c341f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -42,7 +42,7 @@ dependencies = [ "httpx>=0.26.0", # qsv runner (timeouts, typed errors) for the onboarding profiling passes - "qsv-client>=0.1.0", + "qsv-client>=0.3.0", # Vector Search (Pinecone for CKAN semantic search) # Note: Use the new `pinecone` package (v5+), NOT the legacy diff --git a/uv.lock b/uv.lock index 074f61a..1678767 100644 --- a/uv.lock +++ b/uv.lock @@ -519,7 +519,7 @@ requires-dist = [ { name = "python-dotenv", specifier = ">=1.0.0" }, { name = "python-multipart", specifier = ">=0.0.6" }, { name = "pyyaml", specifier = ">=6.0.0" }, - { name = "qsv-client", specifier = ">=0.1.0" }, + { name = "qsv-client", specifier = ">=0.3.0" }, { name = "redis", specifier = ">=5.0.0" }, { name = "respx", marker = "extra == 'dev'", specifier = ">=0.23.1" }, { name = "ruff", marker = "extra == 'dev'", specifier = ">=0.1.0" }, @@ -2188,11 +2188,11 @@ wheels = [ [[package]] name = "qsv-client" -version = "0.1.0" +version = "0.3.0" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/69/9f/9b7e1dc62f6514e85f9d63ce518210cc31da5ffb499c4c122c599703785f/qsv_client-0.1.0.tar.gz", hash = "sha256:ee00c1b23b1c82d2aabe3c8f9ba1efc005af79a16417b051a5fb13c79e73cc92", size = 74153, upload-time = "2026-10-08T17:45:38.452Z" } +sdist = { url = "https://files.pythonhosted.org/packages/c4/5c/9ee10459a01b9cbeb42e58353ca0063819e05a0df340f30c5e1cb941caed/qsv_client-0.3.0.tar.gz", hash = "sha256:f6f8598fb614305e13726c7d021b70cc7b859595aea8b8c533ffc897402372a3", size = 42007, upload-time = "2026-10-10T18:17:10.593Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/67/c5/eb90cab38ba04bb698dfe1963d6ed1eb4b5278a3888520057aedbe8132da/qsv_client-0.1.0-py3-none-any.whl", hash = "sha256:5a2a04a93ee9f689a294fd659c4f2a627cc5462d5a618ab34edfe7cdc3802030", size = 27070, upload-time = "2026-10-08T17:45:37.143Z" }, + { url = "https://files.pythonhosted.org/packages/43/fe/54d1fbc0c9679afef699c9156daa9b75d2b16e9a40b55d94433f9e1a6af4/qsv_client-0.3.0-py3-none-any.whl", hash = "sha256:0b7ffb3faa88ce3d0dcb2bab87fe0008d2597c4285595016061ccc726dff5ba9", size = 31994, upload-time = "2026-10-10T18:17:09.338Z" }, ] [[package]]