From 888ae01a0799525b7d8488b961e42609b70602a0 Mon Sep 17 00:00:00 2001 From: Matthew Jackson <1085847+MattJackson@users.noreply.github.com> Date: Tue, 28 Jul 2026 15:35:19 -0700 Subject: [PATCH] 1.6.0: version sync + doc fixes Bump to 1.6.0 (workspace sync, no source change). Fix stale get_uk -> get_unit_keys references in the crate description + comments, correct the libfreemkv version note, and drop a phantom Mapfile mention from the tests. --- CHANGELOG.md | 6 ++++++ Cargo.toml | 6 +++--- src/keydb.rs | 2 +- src/online.rs | 2 +- tests/key_sources.rs | 2 +- 5 files changed, 12 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3d43784..fe39ffd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## [1.6.0] — UNRELEASED + +Version sync with the workspace (freemkv-engine split release). No source change +in this crate; it remains a pluggable AACS key-source provider consumed by the +`freemkv` CLI and libfreemkv's key resolver. + ## [1.5.2] — 2026-07-22 Version sync with the workspace; inherits libfreemkv 1.5.2 (CSS DVD descramble diff --git a/Cargo.toml b/Cargo.toml index 5b73eca..423df81 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,10 +1,10 @@ [package] name = "freemkv-keysources" -version = "1.5.2" +version = "1.6.0" edition = "2024" rust-version = "1.86" license = "MIT" -description = "Pluggable AACS key sources (keydb, online key service) for libfreemkv. Each source looks a disc up and hands libfreemkv its terminal Unit Keys via get_uk; the library does all derivation." +description = "Pluggable AACS key sources (keydb, online key service) for libfreemkv. Each source looks a disc up and hands libfreemkv its terminal Unit Keys via get_unit_keys; the library does all derivation." repository = "https://github.com/freemkv/freemkv-keysources" keywords = ["aacs", "blu-ray", "uhd", "decryption", "keydb"] categories = ["multimedia"] @@ -34,7 +34,7 @@ tracing = "0.1" lto = "thin" codegen-units = 1 -# libfreemkv is git-only (off crates.io). Redirect the bare `libfreemkv = "1.2"` +# libfreemkv is git-only (off crates.io). Redirect the bare `libfreemkv = "1.5"` # req above to the git tag — committed and CI-visible. The release script # rewrites this tag to the new version before regenerating Cargo.lock. Local dev # overrides it with a path patch via the gitignored .cargo/config.toml (a diff --git a/src/keydb.rs b/src/keydb.rs index 9008a58..27712a3 100644 --- a/src/keydb.rs +++ b/src/keydb.rs @@ -367,7 +367,7 @@ mod tests { use libfreemkv::aacs::types::DeviceKey; use std::collections::HashMap; - // ── A test ResolveCtx, so get_uk's path selection can be exercised without + // ── A test ResolveCtx, so get_unit_keys's path selection can be exercised without // a real Disc. Each accessor returns exactly what a case needs. ────────── struct MockCtx { disc_hash: String, diff --git a/src/online.rs b/src/online.rs index 53e30b3..b450272 100644 --- a/src/online.rs +++ b/src/online.rs @@ -212,7 +212,7 @@ impl OnlineSource { /// disc's encrypted title keys from `ctx`). Any failure — no service, /// over-cap MKB, network/parse error, or no key for this disc — yields an /// empty `Vec` (the resolver tries the next source). `&self`: one-shot is - /// the resolver's contract (each source's `get_uk` is called once), so no + /// the resolver's contract (each source's `get_unit_keys` is called once), so no /// per-call latch is needed. fn query(&self, ctx: &dyn ResolveCtx) -> Vec { // No configured service: nothing to resolve. diff --git a/tests/key_sources.rs b/tests/key_sources.rs index d8c509d..2ef45e0 100644 --- a/tests/key_sources.rs +++ b/tests/key_sources.rs @@ -1,7 +1,7 @@ //! Fixture-based integration tests for the published key sources. //! //! These exercise the *public* surface of `freemkv-keysources` end-to-end — -//! real files on disk, the real `KeyDb`/`Mapfile` parsers from libfreemkv, and +//! real files on disk, the real `KeyDb` parser from libfreemkv, and //! the `KeySource` trait (`get_unit_keys` over a `ResolveCtx`) the applications drive. //! //! Covered: