From 7ef2f5370df2a8dea158a9362bf15722b641dac0 Mon Sep 17 00:00:00 2001 From: Jer Miller Date: Wed, 15 Jul 2026 07:19:53 -0600 Subject: [PATCH] release: bump solstone packages to 0.8.7 --- CHANGELOG.md | 13 ++++++++----- packages/solstone-journal-cuda/pyproject.toml | 4 ++-- packages/solstone-journal/pyproject.toml | 4 ++-- pyproject.toml | 2 +- uv.lock | 6 +++--- 5 files changed, 16 insertions(+), 13 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6ac35157c..55ecd5659 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,19 +6,22 @@ Format adapted from [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), al ## [Unreleased] +## [0.8.7] - 2026-07-15 + ### Added -- observer journals with old same-start duplicate segment ladders can now be pruned safely with a dry-run-first `journal observer prune` command. +- older journals with repeated copies of the same segment can now preview and safely remove only proven duplicates, including copies filed under different start times. ### Changed -- pdf import and pdf export now have separate extras: `pdf-import` adds the new pypdfium2 worker with no system packages, while `pdf-export` carries weasyprint and pango for newsletter and reflection downloads. -- document import now reads each pdf page by page through the pypdfium2 worker, labels model-generated text clearly, and retires the legacy pypdf/pdf2image document-import path. +- pdf imports now handle each page separately, keep extracted text distinct from model-assisted text, and preserve a page image anywhere a model helps. +- dated journal views now use one in-page date control, with day, month, and year zoom plus week-by-week movement for reflections. ### Fixed -- observer uploads now recognize already-held files from the segment folder itself, so retrying the same media no longer creates duplicate sibling segments or a 507 ladder; reported by Dave Smith. -- days with image files may run through one extra catchup pass once, because image files now count in the raw-input fingerprint. +- when sol sends the same moment again, your journal now reuses what it already has instead of creating extra copies. +- text, markdown, and document imports that produce nothing now say so clearly and can be retried without a false "already imported" result. +- private-network errors now stay contained, so one failed request no longer drops the whole link or forces repeat pairing. ## [0.8.6] - 2026-07-14 diff --git a/packages/solstone-journal-cuda/pyproject.toml b/packages/solstone-journal-cuda/pyproject.toml index 46efe875f..9a3bf2c7a 100644 --- a/packages/solstone-journal-cuda/pyproject.toml +++ b/packages/solstone-journal-cuda/pyproject.toml @@ -9,10 +9,10 @@ build-backend = "setuptools.build_meta" name = "solstone-journal-cuda" description = "the journal with the NVIDIA CUDA transcription runtime — the memory sol keeps for you, on a computer you choose. Installs the journal service and includes sol." readme = {text = "the journal with the NVIDIA CUDA transcription runtime — the memory sol keeps for you, on a computer you choose. Installs the journal service and includes sol.\n\n pip install solstone-journal-cuda\n\nSee https://github.com/solpbc/solstone-journal.", content-type = "text/markdown"} -version = "0.8.6" +version = "0.8.7" requires-python = ">=3.12" dependencies = [ - "solstone[journal-host]==0.8.6", + "solstone[journal-host]==0.8.7", # GPU ONNX runtime (NVIDIA / Linux x86_64): the GPU wheel supplies the # `onnxruntime` namespace (incl. CPU providers) for VAD, diarization, and # WeSpeaker. Never co-install with the CPU `solstone-journal` leaf — both own diff --git a/packages/solstone-journal/pyproject.toml b/packages/solstone-journal/pyproject.toml index c8b67e2ac..0f92cbf29 100644 --- a/packages/solstone-journal/pyproject.toml +++ b/packages/solstone-journal/pyproject.toml @@ -9,10 +9,10 @@ build-backend = "setuptools.build_meta" name = "solstone-journal" description = "the journal — the memory sol keeps for you, on a computer you choose. Installs the journal service and includes sol." readme = {text = "the journal — the memory sol keeps for you, on a computer you choose. Installs the journal service and includes sol.\n\n pip install solstone-journal\n\nSee https://github.com/solpbc/solstone-journal.", content-type = "text/markdown"} -version = "0.8.6" +version = "0.8.7" requires-python = ">=3.12" dependencies = [ - "solstone[journal-host]==0.8.6", + "solstone[journal-host]==0.8.7", # CPU ONNX runtime: covers VAD, diarization, and the WeSpeaker embedder; # !=1.24.1 across the board (known-bad wheel). "onnxruntime>=1.20.0,!=1.24.1", diff --git a/pyproject.toml b/pyproject.toml index 81dadc4aa..b76ddaba6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "solstone" -version = "0.8.6" +version = "0.8.7" description = "Navigate Life Intelligently" readme = "README.md" requires-python = ">=3.12" diff --git a/uv.lock b/uv.lock index d2be0505a..3eb2d6cbd 100644 --- a/uv.lock +++ b/uv.lock @@ -4299,7 +4299,7 @@ wheels = [ [[package]] name = "solstone" -version = "0.8.6" +version = "0.8.7" source = { editable = "." } dependencies = [ { name = "argon2-cffi" }, @@ -4475,7 +4475,7 @@ journal-cuda = [{ name = "solstone-journal-cuda", editable = "packages/solstone- [[package]] name = "solstone-journal" -version = "0.8.6" +version = "0.8.7" source = { editable = "packages/solstone-journal" } dependencies = [ { name = "onnxruntime" }, @@ -4491,7 +4491,7 @@ requires-dist = [ [[package]] name = "solstone-journal-cuda" -version = "0.8.6" +version = "0.8.7" source = { editable = "packages/solstone-journal-cuda" } dependencies = [ { name = "nvidia-cublas-cu12" }, -- 2.51.2