Skip to content

Release v0.3.1#58

Merged
titusz merged 4 commits into
mainfrom
v0.3.1
Jun 14, 2026
Merged

Release v0.3.1#58
titusz merged 4 commits into
mainfrom
v0.3.1

Conversation

@titusz

@titusz titusz commented Jun 14, 2026

Copy link
Copy Markdown
Member

Release v0.3.1.

Changes

  • Opt-in GPU Docker image variant — published under -gpu tags (:0.3.1-gpu, :0.3-gpu,
    :main-gpu) on a CUDA base, running the experimental semantic codes on an NVIDIA GPU. The
    default image stays the lean CPU python:3.13-slim build. GPU deployment lives in iscc-infra.
  • Tightened client-side ISCC code input validation in the demo frontend decoder.
  • Release bookkeeping: version bump to 0.3.1, CHANGELOG + docs changelog.

Release mechanics

Merging this triggers ci.yml to publish :main and :main-gpu. Publishing the
v0.3.1 GitHub release afterward triggers release.yml to publish the immutable
:0.3.1 / :0.3 (CPU) and :0.3.1-gpu / :0.3-gpu (GPU) tags. latest=false throughout.

ash-0x00 and others added 4 commits June 14, 2026 07:26
Add a CUDA build of iscc-web so the experimental semantic codes (iscc-sct
text, iscc-sci image; both ONNX) run on an NVIDIA GPU, while the default
published image stays the lean CPU python:3.13-slim build. Two tag streams
from one repo: :X.Y.Z (CPU, unchanged) and :X.Y.Z-gpu (CUDA).

iscc-sct 0.2.0 / iscc-sci 0.3.0 moved onnxruntime out of their base deps
into mutually-exclusive cpu|gpu extras, so iscc-web now selects a variant:

- pyproject: cpu/gpu optional-dependencies (iscc-sct[cpu|gpu]>=0.2.0,
  iscc-sci[cpu|gpu]>=0.3.0), onnxruntime in the dev group for local
  CPU dev/tests, and a [tool.uv] conflicts table (cpu<->gpu, dev<->gpu)
  so the clobbering onnxruntime variant wheels never co-resolve.
- uv.lock carries both onnxruntime and onnxruntime-gpu; --extra cpu
  resolves plain onnxruntime, --extra gpu resolves onnxruntime-gpu.
- Dockerfile: CPU prod-build gains --extra cpu; a single combined
  prod-runtime-gpu stage builds on nvidia/cuda:12.6.3-cudnn-runtime-
  ubuntu24.04 with a uv-managed Python 3.13 and --extra gpu. The
  in-image model bake doubles as an import-resolution check.
- CI: pin target: prod-runtime on every CPU build (the GPU stage is now
  last/default); release.yml and ci.yml publish the -gpu stream
  (suffix=-gpu) alongside the unchanged CPU tags, keeping latest=false.
  GPU builds only on release + push (not PRs). Reconcile release.yml's
  stale model pre-download with the current get_model() API.
- Docs: note the -gpu tag, its host requirements (NVIDIA driver +
  container toolkit + --gpus all) and CPU fallback; deployment
  specifics live in iscc-infra.
@titusz titusz merged commit 7cedf10 into main Jun 14, 2026
14 checks passed
@titusz titusz deleted the v0.3.1 branch June 14, 2026 21:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants