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.
This commit is contained in:
Matthew Jackson
2026-07-28 15:35:19 -07:00
parent 42530d1dd3
commit 888ae01a07
5 changed files with 12 additions and 6 deletions
+6
View File
@@ -1,5 +1,11 @@
# Changelog # 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 ## [1.5.2] — 2026-07-22
Version sync with the workspace; inherits libfreemkv 1.5.2 (CSS DVD descramble Version sync with the workspace; inherits libfreemkv 1.5.2 (CSS DVD descramble
+3 -3
View File
@@ -1,10 +1,10 @@
[package] [package]
name = "freemkv-keysources" name = "freemkv-keysources"
version = "1.5.2" version = "1.6.0"
edition = "2024" edition = "2024"
rust-version = "1.86" rust-version = "1.86"
license = "MIT" 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" repository = "https://github.com/freemkv/freemkv-keysources"
keywords = ["aacs", "blu-ray", "uhd", "decryption", "keydb"] keywords = ["aacs", "blu-ray", "uhd", "decryption", "keydb"]
categories = ["multimedia"] categories = ["multimedia"]
@@ -34,7 +34,7 @@ tracing = "0.1"
lto = "thin" lto = "thin"
codegen-units = 1 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 # 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 # 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 # overrides it with a path patch via the gitignored .cargo/config.toml (a
+1 -1
View File
@@ -367,7 +367,7 @@ mod tests {
use libfreemkv::aacs::types::DeviceKey; use libfreemkv::aacs::types::DeviceKey;
use std::collections::HashMap; 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. ────────── // a real Disc. Each accessor returns exactly what a case needs. ──────────
struct MockCtx { struct MockCtx {
disc_hash: String, disc_hash: String,
+1 -1
View File
@@ -212,7 +212,7 @@ impl OnlineSource {
/// disc's encrypted title keys from `ctx`). Any failure — no service, /// 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 /// 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 /// 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. /// per-call latch is needed.
fn query(&self, ctx: &dyn ResolveCtx) -> Vec<UnitKey> { fn query(&self, ctx: &dyn ResolveCtx) -> Vec<UnitKey> {
// No configured service: nothing to resolve. // No configured service: nothing to resolve.
+1 -1
View File
@@ -1,7 +1,7 @@
//! Fixture-based integration tests for the published key sources. //! Fixture-based integration tests for the published key sources.
//! //!
//! These exercise the *public* surface of `freemkv-keysources` end-to-end — //! 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. //! the `KeySource` trait (`get_unit_keys` over a `ResolveCtx`) the applications drive.
//! //!
//! Covered: //! Covered: