From bbd26f05f964881ed94c4912779f8b46159ab18c Mon Sep 17 00:00:00 2001 From: Duncan Tourolle Date: Sat, 29 Aug 2026 13:53:19 +0200 Subject: [PATCH] Release 0.9.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Thirty-five commits since 0.8.0, and two of them are the reason this is a minor rather than a patch. **Storage became pluggable.** A folder backend now sits beside the Nextcloud one behind the same seam, proved by a test rather than by a trait, and the launch screen offers three routes into a library instead of one. **Faces gained a confidence that means something.** A suggestion is scored against the people the user has actually named, the curve it came from is stated rather than implied, and a regroup runs roughly three times faster — the similarity scan and the merge engine both use the machine's own SIMD kernel now, measured on the tablet where the NEON path is the one that runs. Alongside those, the framing tools got the quality-of-life pass this release is named for: a crop can be held to a ratio, a straighten crops away the corners it exposed, an export can be pinned to an exact resolution with the common panel sizes offered as buttons, and dragging the crop rectangle no longer tracks the pointer at half speed. `pkgrel` returns to 1: a new `pkgver` is a new archive name, so there is nothing left for a release number to disambiguate. Co-Authored-By: Claude Opus 5 (1M context) --- Cargo.lock | 40 ++++++++++++++++++++-------------------- Cargo.toml | 2 +- packaging/PKGBUILD | 6 +++--- 3 files changed, 24 insertions(+), 24 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index e630191..308db09 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1221,7 +1221,7 @@ checksum = "f27ae1dd37df86211c42e150270f82743308803d90a6f6e6651cd730d5e1732f" [[package]] name = "darkroom-android" -version = "0.8.0" +version = "0.9.0" dependencies = [ "android_logger", "dr-sync", @@ -1232,7 +1232,7 @@ dependencies = [ [[package]] name = "darkroom-desktop" -version = "0.8.0" +version = "0.9.0" dependencies = [ "anyhow", "dr-ui", @@ -1404,7 +1404,7 @@ checksum = "d8b14ccef22fc6f5a8f4d7d768562a182c04ce9a3b3157b91390b52ddfdf1a76" [[package]] name = "dr-catalog" -version = "0.8.0" +version = "0.9.0" dependencies = [ "dr-face", "dr-plat", @@ -1419,7 +1419,7 @@ dependencies = [ [[package]] name = "dr-decode" -version = "0.8.0" +version = "0.9.0" dependencies = [ "dr-types", "env_logger", @@ -1433,7 +1433,7 @@ dependencies = [ [[package]] name = "dr-export" -version = "0.8.0" +version = "0.9.0" dependencies = [ "dr-decode", "dr-gpu", @@ -1451,7 +1451,7 @@ dependencies = [ [[package]] name = "dr-face" -version = "0.8.0" +version = "0.9.0" dependencies = [ "env_logger", "log", @@ -1464,7 +1464,7 @@ dependencies = [ [[package]] name = "dr-film" -version = "0.8.0" +version = "0.9.0" dependencies = [ "log", "serde", @@ -1473,7 +1473,7 @@ dependencies = [ [[package]] name = "dr-gpu" -version = "0.8.0" +version = "0.9.0" dependencies = [ "bytemuck", "dr-decode", @@ -1490,7 +1490,7 @@ dependencies = [ [[package]] name = "dr-ingest" -version = "0.8.0" +version = "0.9.0" dependencies = [ "dr-plat", "dr-types", @@ -1502,7 +1502,7 @@ dependencies = [ [[package]] name = "dr-lens" -version = "0.8.0" +version = "0.9.0" dependencies = [ "lensfun", "log", @@ -1510,7 +1510,7 @@ dependencies = [ [[package]] name = "dr-pipeline" -version = "0.8.0" +version = "0.9.0" dependencies = [ "dr-types", "log", @@ -1519,7 +1519,7 @@ dependencies = [ [[package]] name = "dr-plat" -version = "0.8.0" +version = "0.9.0" dependencies = [ "android-native-keyring-store", "dr-types", @@ -1535,7 +1535,7 @@ dependencies = [ [[package]] name = "dr-segment" -version = "0.8.0" +version = "0.9.0" dependencies = [ "env_logger", "log", @@ -1548,7 +1548,7 @@ dependencies = [ [[package]] name = "dr-sync" -version = "0.8.0" +version = "0.9.0" dependencies = [ "async-trait", "dr-plat", @@ -1562,7 +1562,7 @@ dependencies = [ [[package]] name = "dr-sync-folder" -version = "0.8.0" +version = "0.9.0" dependencies = [ "async-trait", "dr-sync", @@ -1574,7 +1574,7 @@ dependencies = [ [[package]] name = "dr-sync-nextcloud" -version = "0.8.0" +version = "0.9.0" dependencies = [ "async-trait", "dr-decode", @@ -1596,7 +1596,7 @@ dependencies = [ [[package]] name = "dr-thumbs" -version = "0.8.0" +version = "0.9.0" dependencies = [ "dr-types", "jpeg-encoder", @@ -1608,7 +1608,7 @@ dependencies = [ [[package]] name = "dr-types" -version = "0.8.0" +version = "0.9.0" dependencies = [ "serde", "serde_json", @@ -1617,7 +1617,7 @@ dependencies = [ [[package]] name = "dr-ui" -version = "0.8.0" +version = "0.9.0" dependencies = [ "anyhow", "async-trait", @@ -6945,7 +6945,7 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "traceability" -version = "0.8.0" +version = "0.9.0" dependencies = [ "anyhow", "serde", diff --git a/Cargo.toml b/Cargo.toml index 4a1c797..6f5bea1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -24,7 +24,7 @@ members = [ ] [workspace.package] -version = "0.8.0" +version = "0.9.0" edition = "2021" rust-version = "1.92" license = "GPL-3.0-or-later" diff --git a/packaging/PKGBUILD b/packaging/PKGBUILD index 5895482..b75f03d 100644 --- a/packaging/PKGBUILD +++ b/packaging/PKGBUILD @@ -4,9 +4,9 @@ # makes `makepkg -si` in this directory install what you are actually working # on. Swap `source` for a tagged tarball when there is something to release. pkgname=darkroom -pkgver=0.8.0 -# 2: the package gained the face models (docs/faces.md §2.2a). Same version, -# different contents, so makepkg must not reuse the 0.7.0-1 archive. +pkgver=0.9.0 +# Back to 1 with the version: a new pkgver is a new archive name, so there is +# nothing for makepkg to reuse and nothing for a release number to disambiguate. pkgrel=1 pkgdesc="Non-destructive RAW photo library and editor" arch=('x86_64')