From a090bd4455699886a5f4397253bd7783fa6f2c82 Mon Sep 17 00:00:00 2001 From: Jeremi Joslin Date: Wed, 12 Aug 2026 16:18:59 +0700 Subject: [PATCH 1/6] chore(release): prepare v0.20.0 beta-30 Signed-off-by: Jeremi Joslin --- Cargo.lock | 62 +++++----- Cargo.toml | 60 +++++----- crates/registry-evidence-client-node/index.js | 108 +++++++++--------- .../package-lock.json | 4 +- .../package.json | 2 +- crates/registry-evidence-client-py/Cargo.toml | 2 +- .../pyproject.toml | 2 +- crates/registry-relay-client-node/index.js | 108 +++++++++--------- .../package-lock.json | 4 +- .../registry-relay-client-node/package.json | 2 +- crates/registry-relay-client-py/Cargo.toml | 2 +- .../registry-relay-client-py/pyproject.toml | 2 +- .../deployment-documentation-truth.test.mjs | 2 +- docs/site/scripts/notary-retirement.test.mjs | 6 +- docs/site/src/content/docs/changelog.mdx | 19 ++- .../site/src/content/docs/configure/relay.mdx | 2 +- docs/site/src/content/docs/operate/index.mdx | 4 +- .../content/docs/reference/api-stability.mdx | 2 +- .../docs/reference/relay-client-api.mdx | 8 +- .../src/content/docs/reference/relayctl.mdx | 2 +- .../src/content/docs/reference/standards.mdx | 2 +- .../docs/tutorials/query-relay-client.mdx | 8 +- docs/site/src/data/contracts.yaml | 4 +- docs/site/src/data/docsets.yaml | 22 ++++ docs/site/src/data/generated/contracts.json | 4 +- docs/site/src/data/generated/docsets.json | 29 +++++ docs/site/src/data/generated/standards.json | 28 ++--- docs/site/src/data/repo-docs.yaml | 41 ++++--- docs/site/src/data/standards.yaml | 28 ++--- .../generated/registry-evidence.openapi.json | 2 +- products/manifest/CHANGELOG.md | 2 + products/manifest/docs/release-notes.md | 8 ++ products/platform/CHANGELOG.md | 11 ++ release/manifests/registry-stack-beta-30.yaml | 28 +++++ release/notes/v0.20.0.md | 87 ++++++++++++++ 35 files changed, 460 insertions(+), 247 deletions(-) create mode 100644 release/manifests/registry-stack-beta-30.yaml create mode 100644 release/notes/v0.20.0.md diff --git a/Cargo.lock b/Cargo.lock index d0faa0671..39c9f95bd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2986,7 +2986,7 @@ checksum = "d6f6ff9a378485b298a5286656da665ba74413d36db0979633275d2e708145d4" [[package]] name = "registry-cli-docs" -version = "0.19.0" +version = "0.20.0" dependencies = [ "clap", "registry-evidence", @@ -3001,7 +3001,7 @@ dependencies = [ [[package]] name = "registry-evidence" -version = "0.19.0" +version = "0.20.0" dependencies = [ "assert-json-diff", "async-trait", @@ -3059,7 +3059,7 @@ dependencies = [ [[package]] name = "registry-evidence-authoring" -version = "0.19.0" +version = "0.20.0" dependencies = [ "anyhow", "jsonschema", @@ -3073,7 +3073,7 @@ dependencies = [ [[package]] name = "registry-evidence-client" -version = "0.19.0" +version = "0.20.0" dependencies = [ "base64", "chrono", @@ -3100,7 +3100,7 @@ dependencies = [ [[package]] name = "registry-evidence-client-node" -version = "0.19.0" +version = "0.20.0" dependencies = [ "base64", "chrono", @@ -3123,7 +3123,7 @@ dependencies = [ [[package]] name = "registry-evidence-client-py" -version = "0.19.0" +version = "0.20.0" dependencies = [ "base64", "chrono", @@ -3146,7 +3146,7 @@ dependencies = [ [[package]] name = "registry-evidence-oid4vci" -version = "0.19.0" +version = "0.20.0" dependencies = [ "async-trait", "axum", @@ -3183,7 +3183,7 @@ dependencies = [ [[package]] name = "registry-evidence-verifier" -version = "0.19.0" +version = "0.20.0" dependencies = [ "base64", "chrono", @@ -3203,7 +3203,7 @@ dependencies = [ [[package]] name = "registry-evidencectl" -version = "0.19.0" +version = "0.20.0" dependencies = [ "anyhow", "axum", @@ -3240,7 +3240,7 @@ dependencies = [ [[package]] name = "registry-language-server" -version = "0.19.0" +version = "0.20.0" dependencies = [ "anyhow", "futures", @@ -3259,7 +3259,7 @@ dependencies = [ [[package]] name = "registry-manifest-cli" -version = "0.19.0" +version = "0.20.0" dependencies = [ "registry-manifest-core", "serde", @@ -3270,7 +3270,7 @@ dependencies = [ [[package]] name = "registry-manifest-core" -version = "0.19.0" +version = "0.20.0" dependencies = [ "oxiri", "oxjsonld", @@ -3285,7 +3285,7 @@ dependencies = [ [[package]] name = "registry-mint" -version = "0.19.0" +version = "0.20.0" dependencies = [ "async-trait", "axum", @@ -3323,7 +3323,7 @@ dependencies = [ [[package]] name = "registry-platform-audit" -version = "0.19.0" +version = "0.20.0" dependencies = [ "async-trait", "hmac 0.13.0", @@ -3345,7 +3345,7 @@ dependencies = [ [[package]] name = "registry-platform-authcommon" -version = "0.19.0" +version = "0.20.0" dependencies = [ "base64", "proptest", @@ -3362,11 +3362,11 @@ dependencies = [ [[package]] name = "registry-platform-buildinfo" -version = "0.19.0" +version = "0.20.0" [[package]] name = "registry-platform-canonical-json" -version = "0.19.0" +version = "0.20.0" dependencies = [ "ryu-js", "serde", @@ -3376,7 +3376,7 @@ dependencies = [ [[package]] name = "registry-platform-config" -version = "0.19.0" +version = "0.20.0" dependencies = [ "base64", "registry-platform-crypto", @@ -3392,7 +3392,7 @@ dependencies = [ [[package]] name = "registry-platform-crypto" -version = "0.19.0" +version = "0.20.0" dependencies = [ "async-trait", "aws-lc-rs", @@ -3418,7 +3418,7 @@ dependencies = [ [[package]] name = "registry-platform-httpsec" -version = "0.19.0" +version = "0.20.0" dependencies = [ "axum", "http", @@ -3434,7 +3434,7 @@ dependencies = [ [[package]] name = "registry-platform-httputil" -version = "0.19.0" +version = "0.20.0" dependencies = [ "async-trait", "axum", @@ -3468,7 +3468,7 @@ dependencies = [ [[package]] name = "registry-platform-oidc" -version = "0.19.0" +version = "0.20.0" dependencies = [ "axum", "base64", @@ -3484,7 +3484,7 @@ dependencies = [ [[package]] name = "registry-platform-sdjwt" -version = "0.19.0" +version = "0.20.0" dependencies = [ "async-trait", "base64", @@ -3502,7 +3502,7 @@ dependencies = [ [[package]] name = "registry-platform-sqlite" -version = "0.19.0" +version = "0.20.0" dependencies = [ "rusqlite", "rustix", @@ -3515,7 +3515,7 @@ dependencies = [ [[package]] name = "registry-platform-testing" -version = "0.19.0" +version = "0.20.0" dependencies = [ "async-trait", "axum", @@ -3538,7 +3538,7 @@ dependencies = [ [[package]] name = "registry-relay-client" -version = "0.19.0" +version = "0.20.0" dependencies = [ "async-trait", "axum", @@ -3556,7 +3556,7 @@ dependencies = [ [[package]] name = "registry-relay-client-node" -version = "0.19.0" +version = "0.20.0" dependencies = [ "axum", "napi", @@ -3572,7 +3572,7 @@ dependencies = [ [[package]] name = "registry-relay-client-py" -version = "0.19.0" +version = "0.20.0" dependencies = [ "pyo3", "pyo3-build-config", @@ -3587,11 +3587,11 @@ dependencies = [ [[package]] name = "registry-relay-http-contract" -version = "0.19.0" +version = "0.20.0" [[package]] name = "registry-relay-v2" -version = "0.19.0" +version = "0.20.0" dependencies = [ "async-trait", "axum", @@ -3646,7 +3646,7 @@ dependencies = [ [[package]] name = "registry-relayctl" -version = "0.19.0" +version = "0.20.0" dependencies = [ "clap", "hex", diff --git a/Cargo.toml b/Cargo.toml index 90db5c120..49f9b1205 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -39,7 +39,7 @@ exclude = [ resolver = "2" [workspace.package] -version = "0.19.0" +version = "0.20.0" edition = "2021" rust-version = "1.95" license = "Apache-2.0" @@ -50,35 +50,35 @@ repository = "https://github.com/registrystack/registry-stack" unsafe_code = "forbid" [workspace.dependencies] -registry-evidence = { path = "crates/registry-evidence", version = "0.19.0" } -registry-evidence-authoring = { path = "crates/registry-evidence-authoring", version = "0.19.0" } -registry-evidence-client = { path = "crates/registry-evidence-client", version = "0.19.0" } -registry-evidence-client-node = { path = "crates/registry-evidence-client-node", version = "0.19.0" } -registry-evidence-client-py = { path = "crates/registry-evidence-client-py", version = "0.19.0" } -registry-evidence-oid4vci = { path = "crates/registry-evidence-oid4vci", version = "0.19.0" } -registry-evidence-verifier = { path = "crates/registry-evidence-verifier", version = "0.19.0" } -registry-evidencectl = { path = "crates/registry-evidencectl", version = "0.19.0" } -registry-language-server = { path = "crates/registry-language-server", version = "0.19.0" } -registry-manifest-core = { path = "crates/registry-manifest-core", version = "0.19.0" } -registry-mint = { path = "crates/registry-mint", version = "0.19.0" } -registry-relay-http-contract = { path = "crates/registry-relay-http-contract", version = "0.19.0" } -registry-relay-client = { path = "crates/registry-relay-client", version = "0.19.0" } -registry-relay-client-node = { path = "crates/registry-relay-client-node", version = "0.19.0" } -registry-relay-client-py = { path = "crates/registry-relay-client-py", version = "0.19.0" } -registry-relay-v2 = { path = "crates/registry-relay-v2", version = "0.19.0" } -registry-relayctl = { path = "crates/registry-relayctl", version = "0.19.0" } -registry-platform-audit = { path = "crates/registry-platform-audit", version = "0.19.0" } -registry-platform-authcommon = { path = "crates/registry-platform-authcommon", version = "0.19.0" } -registry-platform-buildinfo = { path = "crates/registry-platform-buildinfo", version = "0.19.0" } -registry-platform-canonical-json = { path = "crates/registry-platform-canonical-json", version = "0.19.0" } -registry-platform-config = { path = "crates/registry-platform-config", version = "0.19.0" } -registry-platform-crypto = { path = "crates/registry-platform-crypto", version = "0.19.0" } -registry-platform-httpsec = { path = "crates/registry-platform-httpsec", version = "0.19.0", default-features = false } -registry-platform-httputil = { path = "crates/registry-platform-httputil", version = "0.19.0" } -registry-platform-oidc = { path = "crates/registry-platform-oidc", version = "0.19.0" } -registry-platform-sdjwt = { path = "crates/registry-platform-sdjwt", version = "0.19.0" } -registry-platform-sqlite = { path = "crates/registry-platform-sqlite", version = "0.19.0" } -registry-platform-testing = { path = "crates/registry-platform-testing", version = "0.19.0" } +registry-evidence = { path = "crates/registry-evidence", version = "0.20.0" } +registry-evidence-authoring = { path = "crates/registry-evidence-authoring", version = "0.20.0" } +registry-evidence-client = { path = "crates/registry-evidence-client", version = "0.20.0" } +registry-evidence-client-node = { path = "crates/registry-evidence-client-node", version = "0.20.0" } +registry-evidence-client-py = { path = "crates/registry-evidence-client-py", version = "0.20.0" } +registry-evidence-oid4vci = { path = "crates/registry-evidence-oid4vci", version = "0.20.0" } +registry-evidence-verifier = { path = "crates/registry-evidence-verifier", version = "0.20.0" } +registry-evidencectl = { path = "crates/registry-evidencectl", version = "0.20.0" } +registry-language-server = { path = "crates/registry-language-server", version = "0.20.0" } +registry-manifest-core = { path = "crates/registry-manifest-core", version = "0.20.0" } +registry-mint = { path = "crates/registry-mint", version = "0.20.0" } +registry-relay-http-contract = { path = "crates/registry-relay-http-contract", version = "0.20.0" } +registry-relay-client = { path = "crates/registry-relay-client", version = "0.20.0" } +registry-relay-client-node = { path = "crates/registry-relay-client-node", version = "0.20.0" } +registry-relay-client-py = { path = "crates/registry-relay-client-py", version = "0.20.0" } +registry-relay-v2 = { path = "crates/registry-relay-v2", version = "0.20.0" } +registry-relayctl = { path = "crates/registry-relayctl", version = "0.20.0" } +registry-platform-audit = { path = "crates/registry-platform-audit", version = "0.20.0" } +registry-platform-authcommon = { path = "crates/registry-platform-authcommon", version = "0.20.0" } +registry-platform-buildinfo = { path = "crates/registry-platform-buildinfo", version = "0.20.0" } +registry-platform-canonical-json = { path = "crates/registry-platform-canonical-json", version = "0.20.0" } +registry-platform-config = { path = "crates/registry-platform-config", version = "0.20.0" } +registry-platform-crypto = { path = "crates/registry-platform-crypto", version = "0.20.0" } +registry-platform-httpsec = { path = "crates/registry-platform-httpsec", version = "0.20.0", default-features = false } +registry-platform-httputil = { path = "crates/registry-platform-httputil", version = "0.20.0" } +registry-platform-oidc = { path = "crates/registry-platform-oidc", version = "0.20.0" } +registry-platform-sdjwt = { path = "crates/registry-platform-sdjwt", version = "0.20.0" } +registry-platform-sqlite = { path = "crates/registry-platform-sqlite", version = "0.20.0" } +registry-platform-testing = { path = "crates/registry-platform-testing", version = "0.20.0" } anyhow = { version = "1" } assert-json-diff = { version = "2" } diff --git a/crates/registry-evidence-client-node/index.js b/crates/registry-evidence-client-node/index.js index 07ca1a089..b21a6c8a4 100644 --- a/crates/registry-evidence-client-node/index.js +++ b/crates/registry-evidence-client-node/index.js @@ -77,8 +77,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-android-arm64') const bindingPackageVersion = require('@registrystack/evidence-client-android-arm64/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -93,8 +93,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-android-arm-eabi') const bindingPackageVersion = require('@registrystack/evidence-client-android-arm-eabi/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -114,8 +114,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-win32-x64-gnu') const bindingPackageVersion = require('@registrystack/evidence-client-win32-x64-gnu/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -130,8 +130,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-win32-x64-msvc') const bindingPackageVersion = require('@registrystack/evidence-client-win32-x64-msvc/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -147,8 +147,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-win32-ia32-msvc') const bindingPackageVersion = require('@registrystack/evidence-client-win32-ia32-msvc/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -163,8 +163,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-win32-arm64-msvc') const bindingPackageVersion = require('@registrystack/evidence-client-win32-arm64-msvc/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -182,8 +182,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-darwin-universal') const bindingPackageVersion = require('@registrystack/evidence-client-darwin-universal/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -198,8 +198,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-darwin-x64') const bindingPackageVersion = require('@registrystack/evidence-client-darwin-x64/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -214,8 +214,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-darwin-arm64') const bindingPackageVersion = require('@registrystack/evidence-client-darwin-arm64/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -234,8 +234,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-freebsd-x64') const bindingPackageVersion = require('@registrystack/evidence-client-freebsd-x64/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -250,8 +250,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-freebsd-arm64') const bindingPackageVersion = require('@registrystack/evidence-client-freebsd-arm64/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -271,8 +271,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-linux-x64-musl') const bindingPackageVersion = require('@registrystack/evidence-client-linux-x64-musl/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -287,8 +287,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-linux-x64-gnu') const bindingPackageVersion = require('@registrystack/evidence-client-linux-x64-gnu/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -305,8 +305,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-linux-arm64-musl') const bindingPackageVersion = require('@registrystack/evidence-client-linux-arm64-musl/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -321,8 +321,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-linux-arm64-gnu') const bindingPackageVersion = require('@registrystack/evidence-client-linux-arm64-gnu/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -339,8 +339,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-linux-arm-musleabihf') const bindingPackageVersion = require('@registrystack/evidence-client-linux-arm-musleabihf/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -355,8 +355,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-linux-arm-gnueabihf') const bindingPackageVersion = require('@registrystack/evidence-client-linux-arm-gnueabihf/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -373,8 +373,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-linux-loong64-musl') const bindingPackageVersion = require('@registrystack/evidence-client-linux-loong64-musl/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -389,8 +389,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-linux-loong64-gnu') const bindingPackageVersion = require('@registrystack/evidence-client-linux-loong64-gnu/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -407,8 +407,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-linux-riscv64-musl') const bindingPackageVersion = require('@registrystack/evidence-client-linux-riscv64-musl/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -423,8 +423,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-linux-riscv64-gnu') const bindingPackageVersion = require('@registrystack/evidence-client-linux-riscv64-gnu/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -440,8 +440,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-linux-ppc64-gnu') const bindingPackageVersion = require('@registrystack/evidence-client-linux-ppc64-gnu/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -456,8 +456,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-linux-s390x-gnu') const bindingPackageVersion = require('@registrystack/evidence-client-linux-s390x-gnu/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -476,8 +476,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-openharmony-arm64') const bindingPackageVersion = require('@registrystack/evidence-client-openharmony-arm64/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -492,8 +492,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-openharmony-x64') const bindingPackageVersion = require('@registrystack/evidence-client-openharmony-x64/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -508,8 +508,8 @@ function requireNative() { try { const binding = require('@registrystack/evidence-client-openharmony-arm') const bindingPackageVersion = require('@registrystack/evidence-client-openharmony-arm/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -648,8 +648,8 @@ if (!nativeBinding || forceWasi) { if (!candidateFailed) { if (process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { const bindingPackageVersion = require('@registrystack/evidence-client-wasm32-wasi/package.json').version - if (bindingPackageVersion !== '0.19.0') { - throw new Error(`WASI binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0') { + throw new Error(`WASI binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } } wasiBinding = require('@registrystack/evidence-client-wasm32-wasi') diff --git a/crates/registry-evidence-client-node/package-lock.json b/crates/registry-evidence-client-node/package-lock.json index f9326ab3f..425b0959f 100644 --- a/crates/registry-evidence-client-node/package-lock.json +++ b/crates/registry-evidence-client-node/package-lock.json @@ -1,12 +1,12 @@ { "name": "@registrystack/evidence-client", - "version": "0.19.0", + "version": "0.20.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@registrystack/evidence-client", - "version": "0.19.0", + "version": "0.20.0", "license": "Apache-2.0", "devDependencies": { "@napi-rs/cli": "3.8.2" diff --git a/crates/registry-evidence-client-node/package.json b/crates/registry-evidence-client-node/package.json index ee23cbe1b..f16b886c5 100644 --- a/crates/registry-evidence-client-node/package.json +++ b/crates/registry-evidence-client-node/package.json @@ -1,6 +1,6 @@ { "name": "@registrystack/evidence-client", - "version": "0.19.0", + "version": "0.20.0", "description": "Node.js binding for the Evidence relying-party client, via napi-rs.", "license": "Apache-2.0", "repository": { diff --git a/crates/registry-evidence-client-py/Cargo.toml b/crates/registry-evidence-client-py/Cargo.toml index 2cf4aa0ce..dc9124d66 100644 --- a/crates/registry-evidence-client-py/Cargo.toml +++ b/crates/registry-evidence-client-py/Cargo.toml @@ -29,7 +29,7 @@ chrono.workspace = true # multiple candidates for rmeta dependency`, which no `use` path syntax can # resolve). One consistent alias, used everywhere this crate reaches the SDK, # avoids that rather than special-casing test code against production code. -evidence-client-sdk = { package = "registry-evidence-client", path = "../registry-evidence-client", version = "0.19.0" } +evidence-client-sdk = { package = "registry-evidence-client", path = "../registry-evidence-client", version = "0.20.0" } pyo3.workspace = true registry-platform-crypto.workspace = true serde_json.workspace = true diff --git a/crates/registry-evidence-client-py/pyproject.toml b/crates/registry-evidence-client-py/pyproject.toml index 31cb8a18b..cf7be0ab8 100644 --- a/crates/registry-evidence-client-py/pyproject.toml +++ b/crates/registry-evidence-client-py/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "maturin" [project] name = "registry-evidence-client" -version = "0.19.0" +version = "0.20.0" description = "Python binding for the Evidence relying-party client, via PyO3." readme = "README.md" license = { text = "Apache-2.0" } diff --git a/crates/registry-relay-client-node/index.js b/crates/registry-relay-client-node/index.js index f87ebcc4d..a4ec90dc8 100644 --- a/crates/registry-relay-client-node/index.js +++ b/crates/registry-relay-client-node/index.js @@ -77,8 +77,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-android-arm64') const bindingPackageVersion = require('@registrystack/relay-client-android-arm64/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -93,8 +93,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-android-arm-eabi') const bindingPackageVersion = require('@registrystack/relay-client-android-arm-eabi/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -114,8 +114,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-win32-x64-gnu') const bindingPackageVersion = require('@registrystack/relay-client-win32-x64-gnu/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -130,8 +130,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-win32-x64-msvc') const bindingPackageVersion = require('@registrystack/relay-client-win32-x64-msvc/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -147,8 +147,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-win32-ia32-msvc') const bindingPackageVersion = require('@registrystack/relay-client-win32-ia32-msvc/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -163,8 +163,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-win32-arm64-msvc') const bindingPackageVersion = require('@registrystack/relay-client-win32-arm64-msvc/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -182,8 +182,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-darwin-universal') const bindingPackageVersion = require('@registrystack/relay-client-darwin-universal/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -198,8 +198,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-darwin-x64') const bindingPackageVersion = require('@registrystack/relay-client-darwin-x64/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -214,8 +214,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-darwin-arm64') const bindingPackageVersion = require('@registrystack/relay-client-darwin-arm64/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -234,8 +234,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-freebsd-x64') const bindingPackageVersion = require('@registrystack/relay-client-freebsd-x64/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -250,8 +250,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-freebsd-arm64') const bindingPackageVersion = require('@registrystack/relay-client-freebsd-arm64/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -271,8 +271,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-linux-x64-musl') const bindingPackageVersion = require('@registrystack/relay-client-linux-x64-musl/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -287,8 +287,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-linux-x64-gnu') const bindingPackageVersion = require('@registrystack/relay-client-linux-x64-gnu/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -305,8 +305,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-linux-arm64-musl') const bindingPackageVersion = require('@registrystack/relay-client-linux-arm64-musl/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -321,8 +321,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-linux-arm64-gnu') const bindingPackageVersion = require('@registrystack/relay-client-linux-arm64-gnu/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -339,8 +339,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-linux-arm-musleabihf') const bindingPackageVersion = require('@registrystack/relay-client-linux-arm-musleabihf/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -355,8 +355,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-linux-arm-gnueabihf') const bindingPackageVersion = require('@registrystack/relay-client-linux-arm-gnueabihf/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -373,8 +373,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-linux-loong64-musl') const bindingPackageVersion = require('@registrystack/relay-client-linux-loong64-musl/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -389,8 +389,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-linux-loong64-gnu') const bindingPackageVersion = require('@registrystack/relay-client-linux-loong64-gnu/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -407,8 +407,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-linux-riscv64-musl') const bindingPackageVersion = require('@registrystack/relay-client-linux-riscv64-musl/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -423,8 +423,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-linux-riscv64-gnu') const bindingPackageVersion = require('@registrystack/relay-client-linux-riscv64-gnu/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -440,8 +440,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-linux-ppc64-gnu') const bindingPackageVersion = require('@registrystack/relay-client-linux-ppc64-gnu/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -456,8 +456,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-linux-s390x-gnu') const bindingPackageVersion = require('@registrystack/relay-client-linux-s390x-gnu/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -476,8 +476,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-openharmony-arm64') const bindingPackageVersion = require('@registrystack/relay-client-openharmony-arm64/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -492,8 +492,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-openharmony-x64') const bindingPackageVersion = require('@registrystack/relay-client-openharmony-x64/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -508,8 +508,8 @@ function requireNative() { try { const binding = require('@registrystack/relay-client-openharmony-arm') const bindingPackageVersion = require('@registrystack/relay-client-openharmony-arm/package.json').version - if (bindingPackageVersion !== '0.19.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { - throw new Error(`Native binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { + throw new Error(`Native binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } return binding } catch (e) { @@ -648,8 +648,8 @@ if (!nativeBinding || forceWasi) { if (!candidateFailed) { if (process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { const bindingPackageVersion = require('@registrystack/relay-client-wasm32-wasi/package.json').version - if (bindingPackageVersion !== '0.19.0') { - throw new Error(`WASI binding package version mismatch, expected 0.19.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) + if (bindingPackageVersion !== '0.20.0') { + throw new Error(`WASI binding package version mismatch, expected 0.20.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) } } wasiBinding = require('@registrystack/relay-client-wasm32-wasi') diff --git a/crates/registry-relay-client-node/package-lock.json b/crates/registry-relay-client-node/package-lock.json index c2e32b507..aeb76c44c 100644 --- a/crates/registry-relay-client-node/package-lock.json +++ b/crates/registry-relay-client-node/package-lock.json @@ -1,12 +1,12 @@ { "name": "@registrystack/relay-client", - "version": "0.19.0", + "version": "0.20.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@registrystack/relay-client", - "version": "0.19.0", + "version": "0.20.0", "license": "Apache-2.0", "devDependencies": { "@napi-rs/cli": "3.8.2", diff --git a/crates/registry-relay-client-node/package.json b/crates/registry-relay-client-node/package.json index ab0dce227..5c4695dbf 100644 --- a/crates/registry-relay-client-node/package.json +++ b/crates/registry-relay-client-node/package.json @@ -1,6 +1,6 @@ { "name": "@registrystack/relay-client", - "version": "0.19.0", + "version": "0.20.0", "description": "Node.js binding for the Registry Relay V2 client, via napi-rs.", "license": "Apache-2.0", "repository": { "type": "git", "url": "https://github.com/registrystack/registry-stack" }, diff --git a/crates/registry-relay-client-py/Cargo.toml b/crates/registry-relay-client-py/Cargo.toml index 1df6d2251..f019924d9 100644 --- a/crates/registry-relay-client-py/Cargo.toml +++ b/crates/registry-relay-client-py/Cargo.toml @@ -21,7 +21,7 @@ extension-module = ["pyo3/extension-module"] [dependencies] pyo3.workspace = true registry-platform-crypto.workspace = true -relay-client-sdk = { package = "registry-relay-client", path = "../registry-relay-client", version = "0.19.0" } +relay-client-sdk = { package = "registry-relay-client", path = "../registry-relay-client", version = "0.20.0" } serde.workspace = true serde_json.workspace = true tokio.workspace = true diff --git a/crates/registry-relay-client-py/pyproject.toml b/crates/registry-relay-client-py/pyproject.toml index 7c98f4868..6aa2dc6ad 100644 --- a/crates/registry-relay-client-py/pyproject.toml +++ b/crates/registry-relay-client-py/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "maturin" [project] name = "registry-relay-client" -version = "0.19.0" +version = "0.20.0" description = "Python binding for the Registry Relay V2 client, via PyO3." readme = "README.md" license = { text = "Apache-2.0" } diff --git a/docs/site/scripts/deployment-documentation-truth.test.mjs b/docs/site/scripts/deployment-documentation-truth.test.mjs index f70f4b6b7..c69ff17b0 100644 --- a/docs/site/scripts/deployment-documentation-truth.test.mjs +++ b/docs/site/scripts/deployment-documentation-truth.test.mjs @@ -96,7 +96,7 @@ test('current docs stay under /dev/ while v0.15.2 remains the released archive', } assert.equal(docset.status, 'archived', `${docset.id} must expose its release-train status`); const expectedAvailability = - ['v0.18.0', 'v0.17.0', 'v0.16.3', 'v0.15.1', 'v0.15.0'].includes(docset.id) + ['v0.20.0', 'v0.18.0', 'v0.17.0', 'v0.16.3', 'v0.15.1', 'v0.15.0'].includes(docset.id) ? 'candidate' : docset.id.startsWith('v') ? 'released' diff --git a/docs/site/scripts/notary-retirement.test.mjs b/docs/site/scripts/notary-retirement.test.mjs index c6be72e26..b2f3bec57 100644 --- a/docs/site/scripts/notary-retirement.test.mjs +++ b/docs/site/scripts/notary-retirement.test.mjs @@ -69,7 +69,9 @@ test('removes the current Notary docs sources and generated product plumbing', ( const currentDocset = docsets.docsets.find((docset) => docset.id === docsets.current); assert.equal(currentDocset.products['registry-notary'], undefined); const historicalNotaryDocsets = docsets.docsets.filter( - (entry) => entry.status === 'archived' && !['v0.17.0', 'v0.18.0'].includes(entry.id), + (entry) => + entry.status === 'archived' && + !['v0.17.0', 'v0.18.0', 'v0.20.0'].includes(entry.id), ); for (const docset of historicalNotaryDocsets) { assert.ok(docset.products['registry-notary'], `${docset.id} lost its historical Notary pin`); @@ -78,6 +80,8 @@ test('removes the current Notary docs sources and generated product plumbing', ( assert.equal(v017.products['registry-notary'], undefined); const v018 = docsets.docsets.find((entry) => entry.id === 'v0.18.0'); assert.equal(v018.products['registry-notary'], undefined); + const v020 = docsets.docsets.find((entry) => entry.id === 'v0.20.0'); + assert.equal(v020.products['registry-notary'], undefined); assert.equal(openapiSources.some((source) => source.owner === 'registry-notary'), false); assert.equal(projects.some((project) => project.id === 'registry-notary'), false); assert.equal(contracts.some((contract) => contract.owner === 'registry-notary'), false); diff --git a/docs/site/src/content/docs/changelog.mdx b/docs/site/src/content/docs/changelog.mdx index f9a665655..d9251dc86 100644 --- a/docs/site/src/content/docs/changelog.mdx +++ b/docs/site/src/content/docs/changelog.mdx @@ -18,14 +18,29 @@ relevant product pages on this site rather than duplicating release notes. ## Unreleased -BREAKING: +## 2026-08-12 -- Made `holderBoundBatchMaxSize` a required member of the +Documentation updates for the v0.20.0 beta-30 release: + +- BREAKING: Made `holderBoundBatchMaxSize` a required member of the `registry.evidence-definitions/v1` metadata response. - Upgrade the Evidence runtime, Evidence clients, and Evidence OID4VCI adapter together. New clients read an older response without this member as a batch size of `1`; older strict clients reject responses that contain the new member. +- BREAKING: Removed the reserved `registry_relay` vocabulary prefix from + `registry-manifest/v1`. Use absolute IRIs or declare an institution-owned + active vocabulary before validating and republishing affected metadata. +- Documented the first prebuilt Relay Node.js and Python client packages, which + are attached to the matching GitHub Release rather than published to npm or + PyPI. +- Added the v0.20.0 candidate documentation archive and advanced maintained + release, installation, contract, and standards references to v0.20.0. +- Added generated command references for the current CLIs, Relay V2 editor + support, complete OID4VCI delivery guidance, and Evidence local source API + mock guidance. +- Removed the remaining Relay V1 and `registryctl` source references from the + current product surface while retaining their v0.19.0 retirement record. ## 2026-08-11 diff --git a/docs/site/src/content/docs/configure/relay.mdx b/docs/site/src/content/docs/configure/relay.mdx index f062b4657..fc8fbdd97 100644 --- a/docs/site/src/content/docs/configure/relay.mdx +++ b/docs/site/src/content/docs/configure/relay.mdx @@ -279,7 +279,7 @@ The profile does not expose schema or availability placeholders and does not cla conformance or certification. A complete worked statistical project is tracked in the repository at -[`products/relay-v2/acceptance/labour-statistics`](https://github.com/registrystack/registry-stack/tree/v0.19.0/products/relay-v2/acceptance/labour-statistics). +[`products/relay-v2/acceptance/labour-statistics`](https://github.com/registrystack/registry-stack/tree/v0.20.0/products/relay-v2/acceptance/labour-statistics). Read it beside your own contract: it carries the full configuration, a synthetic snapshot, codelists, the expected HTTP exchanges, and the generated baselines CI holds it to. diff --git a/docs/site/src/content/docs/operate/index.mdx b/docs/site/src/content/docs/operate/index.mdx index 5f111dc24..a350f3c7d 100644 --- a/docs/site/src/content/docs/operate/index.mdx +++ b/docs/site/src/content/docs/operate/index.mdx @@ -48,13 +48,13 @@ The installer verifies the downloaded binary against the release `SHA256SUMS` before anything reaches the install directory, and refuses any other platform rather than guessing. It does not verify release authenticity. For a higher-assurance installation, follow -[release verification](https://github.com/registrystack/registry-stack/blob/v0.19.0/release/VERIFY.md) +[release verification](https://github.com/registrystack/registry-stack/blob/v0.20.0/release/VERIFY.md) for the pinned tag, then rerun the installer with `RELAY_ASSET_DIR` pointing at the verified directory. `RELAY_INSTALL_DIR` selects the install directory; the default is `~/.local/bin`. -The container image is `ghcr.io/registrystack/relay:v0.19.0`, built on +The container image is `ghcr.io/registrystack/relay:v0.20.0`, built on distroless nonroot. It exposes port 8080, runs `relay serve --runtime /etc/relay/runtime.yaml` by default, and probes itself with `relay healthcheck`. diff --git a/docs/site/src/content/docs/reference/api-stability.mdx b/docs/site/src/content/docs/reference/api-stability.mdx index 409510f7a..b853a64a5 100644 --- a/docs/site/src/content/docs/reference/api-stability.mdx +++ b/docs/site/src/content/docs/reference/api-stability.mdx @@ -51,7 +51,7 @@ The enforcement column names the repository CI checks so the mechanism is audita | Configuration formats and documented environment variables | Relay's `registry.yaml` and `runtime.yaml` grammars, the frozen Evidence Gateway schemas `products/evidence/contracts/runtime.schema.yaml` and `products/evidence/contracts/bundle.schema.yaml`, plus the [environment variable reference](../environment-variables/) | Relay and Evidence Gateway both parse with `deny_unknown_fields`, so a retired or misspelled key is a startup refusal rather than an ignored field; Evidence Gateway's config parser is tested against the frozen contract schemas (`crates/registry-evidence/src/config.rs`), and `products/evidence/scripts/check-config-key-paths.sh` holds its configuration reference in exact parity with them | | Registry Manifest schema and rendered artifacts | `registry-manifest/v1` and the rendered artifact schema versions, governed by [RS-DM-MANIFEST](../../spec/rs-dm-manifest/) | `validate_manifest` accepts only `registry-manifest/v1`; REQ-DM-MANIFEST-013 requires strict unknown-key rejection at parse time | | Command-line interfaces | Documented commands and flags of `relay`, `evidence`, and `registry-manifest`, and their machine-readable output modes | CLI reference pages; the `evidence` command surface is stated in `products/evidence/OPERATOR-CONTRACT.md` and exercised end to end against the built binary in `crates/registry-evidence/tests/cli.rs`; the release candidate workflow asserts each built binary reports the release version | -| Release artifacts and verification interface | Released binary asset names, the one released container image `ghcr.io/registrystack/relay`, and the signature and provenance layout in `release/VERIFY.md` | Release workflow; signed assets verified as documented in [SECURITY.md](https://github.com/registrystack/registry-stack/blob/v0.19.0/SECURITY.md) | +| Release artifacts and verification interface | Released binary asset names, the one released container image `ghcr.io/registrystack/relay`, and the signature and provenance layout in `release/VERIFY.md` | Release workflow; signed assets verified as documented in [SECURITY.md](https://github.com/registrystack/registry-stack/blob/v0.20.0/SECURITY.md) | Relay's covered HTTP surface is its route inventory, not the content of any one deployment's OpenAPI document. Adding a resource, an operation, or a statistical dataset to a Registry contract diff --git a/docs/site/src/content/docs/reference/relay-client-api.mdx b/docs/site/src/content/docs/reference/relay-client-api.mdx index f7a47b99b..34014f9b7 100644 --- a/docs/site/src/content/docs/reference/relay-client-api.mdx +++ b/docs/site/src/content/docs/reference/relay-client-api.mdx @@ -23,10 +23,10 @@ authentication, Problem, trace, and response validation in Rust. Registry Stack is pre-1.0 Beta software. Keep a client on the same Registry Stack release as the Relay deployment unless a release note states a wider compatibility range. -Beginning with Registry Stack v0.19.1, the release workflow attaches three Python wheels and three -Node tarballs to the matching GitHub Release. It does not publish them to PyPI or npm. Registry -Stack v0.19.0 has no prebuilt Relay client packages. The Rust crate has `publish = false`, remains -source-only in the Registry Stack workspace, and is not published to crates.io. +Registry Stack v0.20.0 is the first release with prebuilt Relay clients. The release workflow +attaches three Python wheels and three Node tarballs to the matching GitHub Release. It does not +publish them to PyPI or npm. The Rust crate has `publish = false`, remains source-only in the +Registry Stack workspace, and is not published to crates.io. Python requires version 3.10 or later and uses `abi3-py310`. Node requires version 22.12 or later. The release assets cover Linux amd64, Linux arm64, and macOS arm64. diff --git a/docs/site/src/content/docs/reference/relayctl.mdx b/docs/site/src/content/docs/reference/relayctl.mdx index ccdb216c8..27f5dae70 100644 --- a/docs/site/src/content/docs/reference/relayctl.mdx +++ b/docs/site/src/content/docs/reference/relayctl.mdx @@ -24,7 +24,7 @@ can change before a compatibility promise covers it. The `relay` binary stays th package verification, activation, and serving. This page records workflow boundaries from `crates/registry-relayctl/src/lib.rs` and the boundary -tests in `crates/registry-relayctl/tests/cli_contract.rs`, at release v0.19.0. Use the +tests in `crates/registry-relayctl/tests/cli_contract.rs`, at release v0.20.0. Use the [generated relayctl syntax](../cli/relayctl/) for exact command, argument, option, and constraint data. ## Commands diff --git a/docs/site/src/content/docs/reference/standards.mdx b/docs/site/src/content/docs/reference/standards.mdx index c0108eda3..9ab1b750a 100644 --- a/docs/site/src/content/docs/reference/standards.mdx +++ b/docs/site/src/content/docs/reference/standards.mdx @@ -78,7 +78,7 @@ availability placeholders, other structure types, maintenance routes, or dynamic Each statistical dataset has one fixed access rule and does not accept the Record-oriented `accessProfile` request parameter. The complete synthetic project and its expected HTTP exchanges are tracked at -[`products/relay-v2/acceptance/labour-statistics`](https://github.com/registrystack/registry-stack/tree/v0.19.0/products/relay-v2/acceptance/labour-statistics). +[`products/relay-v2/acceptance/labour-statistics`](https://github.com/registrystack/registry-stack/tree/v0.20.0/products/relay-v2/acceptance/labour-statistics). ## Register diff --git a/docs/site/src/content/docs/tutorials/query-relay-client.mdx b/docs/site/src/content/docs/tutorials/query-relay-client.mdx index 74fc2ef06..bfbc21477 100644 --- a/docs/site/src/content/docs/tutorials/query-relay-client.mdx +++ b/docs/site/src/content/docs/tutorials/query-relay-client.mdx @@ -37,9 +37,9 @@ Complete [Publish a governed SQLite registry](../publish-governed-sqlite-registr the **Serve it** step. Leave Relay running and open a second shell. The resulting deployment is anonymous, contains synthetic records only, and listens at `http://127.0.0.1:8080`. -Prebuilt Relay client packages start with Registry Stack v0.19.1. Registry Stack v0.19.0 has no -prebuilt Python wheel. The running Relay must therefore be v0.19.1 or later. Install the client -from that exact Relay release, using the wheel that matches this machine. +Prebuilt Relay client packages start with Registry Stack v0.20.0. The running Relay must therefore +be v0.20.0 or later. Install the client from that exact Relay release, using the wheel that matches +this machine. ## Install the client and read a record @@ -272,7 +272,7 @@ registry project remains available for later Relay exercises. | Symptom | Cause | Fix | | --- | --- | --- | -| GitHub returns `404` for the wheel | The running Relay is older than v0.19.1, its exact release is not published, or the platform name is wrong | Use a published v0.19.1 or later Relay, then download the wheel from that exact release for one of the three platforms in this tutorial. | +| GitHub returns `404` for the wheel | The running Relay is older than v0.20.0, its exact release is not published, or the platform name is wrong | Use a published v0.20.0 or later Relay, then download the wheel from that exact release for one of the three platforms in this tutorial. | | `No matching distribution found` | The wheel filename or local path does not match the downloaded asset | Keep the original release filename and install that exact local file. | | `Connection refused` | The synthetic Relay is not listening on port 8080 | Return to the publishing tutorial, start Relay, and leave it running in its shell. | | `configuration` at construction | The base URL is not HTTPS or loopback HTTP, or it contains credentials, a query, or a fragment | Use `http://127.0.0.1:8080` for this local deployment. | diff --git a/docs/site/src/data/contracts.yaml b/docs/site/src/data/contracts.yaml index 5021ab904..ebfeb4e7a 100644 --- a/docs/site/src/data/contracts.yaml +++ b/docs/site/src/data/contracts.yaml @@ -27,7 +27,7 @@ surface: "Closed YAML grammar `relay.registrystack.org/v2alpha1` for the two documents an adopter authors: `registry.yaml` (`kind: RegistryContract`), declaring registry identity, resources, operations, access profiles, and disclosure; and `runtime.yaml` (`kind: RelayRuntime`), binding one deployment's package, SQLite source, authentication, audit, secrets, and listener." source_of_truth: label: Relay V2 contract and runtime types - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/contract.rs + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/contract.rs consumer_note: >- Both documents are closed shapes: an unrecognized key is a parse failure, not an ignored field, so a document that compiles today cannot silently @@ -42,7 +42,7 @@ surface: "Versioned sealed directory `relay.registrystack.org/package/v1alpha3`: the `relay-package.json` manifest with its governed-file digests, media types, and artifact visibility, alongside the compiled registry, the governed inputs, and the generated artifacts a Relay process verifies before it activates." source_of_truth: label: Relay V2 package manifest - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/package.rs + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/package.rs consumer_note: >- `relayctl package` produces the directory and Relay verifies it before it opens the database, audit file, token issuer, or listener. Its diff --git a/docs/site/src/data/docsets.yaml b/docs/site/src/data/docsets.yaml index ecaad2fde..d66402547 100644 --- a/docs/site/src/data/docsets.yaml +++ b/docs/site/src/data/docsets.yaml @@ -23,6 +23,28 @@ docsets: registry-evidence: version: main source (unreleased) ref: HEAD + - id: v0.20.0 + label: v0.20.0 + path: /v/0.20.0/ + status: archived + availability: candidate + source: registry-stack-v0.20.0 + repo_docs_source: monorepo + published_at: 2026-08-12 + description: Registry Stack v0.20.0 beta-30 candidate documentation set with Relay clients, wallet delivery, and local source mocks. + products: + registry-stack: + version: v0.20.0 + ref: v0.20.0 + registry-relay: + version: v0.20.0 + ref: v0.20.0 + registry-manifest: + version: v0.20.0 + ref: v0.20.0 + registry-evidence: + version: v0.20.0 + ref: v0.20.0 - id: v0.18.0 label: v0.18.0 path: /v/0.18.0/ diff --git a/docs/site/src/data/generated/contracts.json b/docs/site/src/data/generated/contracts.json index 41b6ba262..33ad882d2 100644 --- a/docs/site/src/data/generated/contracts.json +++ b/docs/site/src/data/generated/contracts.json @@ -31,7 +31,7 @@ "surface": "Closed YAML grammar `relay.registrystack.org/v2alpha1` for the two documents an adopter authors: `registry.yaml` (`kind: RegistryContract`), declaring registry identity, resources, operations, access profiles, and disclosure; and `runtime.yaml` (`kind: RelayRuntime`), binding one deployment's package, SQLite source, authentication, audit, secrets, and listener.", "source_of_truth": { "label": "Relay V2 contract and runtime types", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/contract.rs" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/contract.rs" }, "consumer_note": "Both documents are closed shapes: an unrecognized key is a parse failure, not an ignored field, so a document that compiles today cannot silently change meaning under a later runtime. The grammar is pre-1.0 and can change with a documented migration in a release note. A deployment's HTTP surface is compiled from its own `registry.yaml`, so no product-level OpenAPI document describes Relay; fetch `GET /openapi.json` from the deployment." }, @@ -43,7 +43,7 @@ "surface": "Versioned sealed directory `relay.registrystack.org/package/v1alpha3`: the `relay-package.json` manifest with its governed-file digests, media types, and artifact visibility, alongside the compiled registry, the governed inputs, and the generated artifacts a Relay process verifies before it activates.", "source_of_truth": { "label": "Relay V2 package manifest", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/package.rs" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/package.rs" }, "consumer_note": "`relayctl package` produces the directory and Relay verifies it before it opens the database, audit file, token issuer, or listener. Its `packageRevision` is an integrity digest over canonical JSON, not an authenticity proof: packages are unsigned, so the operator's own transport and storage are what bind a package to its author." }, diff --git a/docs/site/src/data/generated/docsets.json b/docs/site/src/data/generated/docsets.json index 7d95acaf0..6e98262d5 100644 --- a/docs/site/src/data/generated/docsets.json +++ b/docs/site/src/data/generated/docsets.json @@ -31,6 +31,35 @@ } } }, + { + "id": "v0.20.0", + "label": "v0.20.0", + "path": "/v/0.20.0/", + "status": "archived", + "availability": "candidate", + "source": "registry-stack-v0.20.0", + "repo_docs_source": "monorepo", + "published_at": "2026-08-12", + "description": "Registry Stack v0.20.0 beta-30 candidate documentation set with Relay clients, wallet delivery, and local source mocks.", + "products": { + "registry-stack": { + "version": "v0.20.0", + "ref": "v0.20.0" + }, + "registry-relay": { + "version": "v0.20.0", + "ref": "v0.20.0" + }, + "registry-manifest": { + "version": "v0.20.0", + "ref": "v0.20.0" + }, + "registry-evidence": { + "version": "v0.20.0", + "ref": "v0.20.0" + } + } + }, { "id": "v0.18.0", "label": "v0.18.0", diff --git a/docs/site/src/data/generated/standards.json b/docs/site/src/data/generated/standards.json index de3199c60..d758cccf5 100644 --- a/docs/site/src/data/generated/standards.json +++ b/docs/site/src/data/generated/standards.json @@ -133,7 +133,7 @@ }, { "label": "Relay V2 standards alignment, intentional gaps", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/products/relay-v2/STANDARDS-ALIGNMENT.md" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/products/relay-v2/STANDARDS-ALIGNMENT.md" } ], "last_checked": "2026-08-11", @@ -159,7 +159,7 @@ }, { "label": "Relay V2 standards alignment, intentional gaps", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/products/relay-v2/STANDARDS-ALIGNMENT.md" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/products/relay-v2/STANDARDS-ALIGNMENT.md" } ], "last_checked": "2026-08-11", @@ -241,11 +241,11 @@ "evidence_docs": [ { "label": "Relay V2 OpenAPI generation", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/artifacts.rs" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/artifacts.rs" }, { "label": "Relay V2 OpenAPI route", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/api.rs" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/api.rs" }, { "label": "Registry Notary generated OpenAPI document (pinned)", @@ -275,11 +275,11 @@ "evidence_docs": [ { "label": "Relay V2 SHACL shape generation", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/semantics.rs" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/semantics.rs" }, { "label": "Relay V2 generated artifact inventory", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/artifacts.rs" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/artifacts.rs" }, { "label": "Registry Manifest README", @@ -339,11 +339,11 @@ "evidence_docs": [ { "label": "Relay V2 JSON Schema generation", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/semantics.rs" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/semantics.rs" }, { "label": "Relay V2 generated artifact inventory", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/artifacts.rs" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/artifacts.rs" }, { "label": "Registry Manifest form schema fixture (Draft 2020-12)", @@ -376,11 +376,11 @@ "evidence_docs": [ { "label": "Relay V2 JSON-LD context and vocabulary generation", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/semantics.rs" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/semantics.rs" }, { "label": "Relay V2 JSON-LD response representation", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/api.rs" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/api.rs" }, { "label": "Registry Notary CCCEV renderer", @@ -588,11 +588,11 @@ "evidence_docs": [ { "label": "Relay V2 SDMX read routes", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/sdmx_http.rs" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/sdmx_http.rs" }, { "label": "Relay V2 SDMX representation profile", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/sdmx/representation.rs" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/sdmx/representation.rs" }, { "label": "Relay V2 authoring guide", @@ -675,11 +675,11 @@ "evidence_docs": [ { "label": "Relay V2 alignment target declaration", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/contract.rs" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/contract.rs" }, { "label": "Relay V2 alignment target validation", - "url": "https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/compiler.rs" + "url": "https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/compiler.rs" } ], "last_checked": "2026-08-11", diff --git a/docs/site/src/data/repo-docs.yaml b/docs/site/src/data/repo-docs.yaml index fd5492bf2..4ec867452 100644 --- a/docs/site/src/data/repo-docs.yaml +++ b/docs/site/src/data/repo-docs.yaml @@ -14,10 +14,9 @@ repos: # and DEFINITION-OF-DONE.md stay unpublished: they are design probes and # internal engineering contracts, not adopter documentation. # - # products/relay-v2 exists only on the current shell, so every entry excludes - # every archived docset. That makes this repo inactive for archived builds, - # which is why the archived docsets keep their frozen registry-relay refs - # without needing an override block here. + # Relay V2 first enters the versioned documentation archive at v0.20.0. + # Earlier archived docsets stay excluded and retain their frozen Relay V1 + # product documentation. registry-relay: remote: https://github.com/registrystack/registry-stack ref: HEAD @@ -32,6 +31,10 @@ repos: last_reviewed: unreviewed standards_referenced: [govstack-digital-registries, sdmx, openapi, json-schema, shacl, json-ld] exclude_docsets: [v0.18.0, v0.17.0, v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3, beta-2026-06-12] + docset_overrides: + - docsets: [v0.20.0] + standards_referenced: [govstack-digital-registries, sdmx, openapi, json-schema, shacl, json-ld] + last_reviewed: unreviewed description: Approved Relay V2 product concept covering the registry contract, the compiler, the read-only source boundary, and the acceptance set. - src: products/relay-v2/STANDARDS-ALIGNMENT.md dest: products/registry-relay/standards-alignment @@ -41,6 +44,10 @@ repos: last_reviewed: unreviewed standards_referenced: [govstack-digital-registries, sdmx, openapi, json-schema, shacl, json-ld] exclude_docsets: [v0.18.0, v0.17.0, v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3, beta-2026-06-12] + docset_overrides: + - docsets: [v0.20.0] + standards_referenced: [govstack-digital-registries, sdmx, openapi, json-schema, shacl, json-ld] + last_reviewed: unreviewed description: Maintained directional mapping from Relay V2 to the pinned GovStack drafts and the aligned SDMX read subset. Makes no conformance claim. registry-manifest: @@ -59,7 +66,7 @@ repos: last_reviewed: unreviewed standards_referenced: [dcat, bregdcat-ap, cpsv-ap, ogc-api-records, shacl, skos, json-schema, json-ld, odrl, sp-dci, w3c-did, prov-o, govstack-digital-registries] docset_overrides: - - docsets: [v0.18.0, v0.17.0, v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3] + - docsets: [v0.20.0, v0.18.0, v0.17.0, v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3] standards_referenced: [dcat, bregdcat-ap, cpsv-ap, ogc-api-records, shacl, skos, json-schema, json-ld, odrl, sp-dci, w3c-did, prov-o, govstack-digital-registries] last_reviewed: unreviewed - docsets: [beta-2026-06-12] @@ -78,7 +85,7 @@ repos: - docsets: [beta-2026-06-12] standards_referenced: [dcat, bregdcat-ap, cpsv-ap, ogc-api-records, shacl, json-schema, json-ld, odrl] last_reviewed: unreviewed - - docsets: [v0.18.0, v0.17.0, v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3] + - docsets: [v0.20.0, v0.18.0, v0.17.0, v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3] standards_referenced: [dcat, bregdcat-ap, cpsv-ap, ogc-api-records, shacl, skos, json-schema, json-ld, odrl] last_reviewed: unreviewed - src: products/manifest/docs/profile-fixtures.md @@ -90,7 +97,7 @@ repos: last_reviewed: unreviewed standards_referenced: [sp-dci] docset_overrides: - - docsets: [v0.18.0, v0.17.0, v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3, beta-2026-06-12] + - docsets: [v0.20.0, v0.18.0, v0.17.0, v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3, beta-2026-06-12] standards_referenced: [sp-dci] last_reviewed: unreviewed - src: products/manifest/docs/reference.md @@ -105,7 +112,7 @@ repos: - docsets: [beta-2026-06-12] standards_referenced: [dcat, bregdcat-ap, cpsv-ap, ogc-api-records, shacl, json-schema, json-ld, cccev, odrl, w3c-did] last_reviewed: unreviewed - - docsets: [v0.18.0, v0.17.0, v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3] + - docsets: [v0.20.0, v0.18.0, v0.17.0, v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3] standards_referenced: [dcat, bregdcat-ap, cpsv-ap, ogc-api-records, shacl, skos, json-schema, json-ld, cccev, odrl, w3c-did] last_reviewed: unreviewed - src: products/manifest/docs/itb-semic-validation.md @@ -117,7 +124,7 @@ repos: standards_referenced: [dcat, bregdcat-ap, shacl, skos, json-schema, json-ld] exclude_docsets: [beta-5, beta-4, beta-3, beta-2026-06-12] docset_overrides: - - docsets: [v0.18.0, v0.17.0, v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1] + - docsets: [v0.20.0, v0.18.0, v0.17.0, v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1] standards_referenced: [dcat, bregdcat-ap, shacl, skos, json-schema, json-ld] last_reviewed: unreviewed registry-evidence: @@ -137,7 +144,7 @@ repos: standards_referenced: [openapi, json-schema, sd-jwt-vc] exclude_docsets: [v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3, beta-2026-06-12] docset_overrides: - - docsets: [v0.18.0, v0.17.0] + - docsets: [v0.20.0, v0.18.0, v0.17.0] standards_referenced: [openapi, json-schema, sd-jwt-vc] last_reviewed: unreviewed description: Operator and integrator documentation for Evidence Gateway, the minimum-disclosure assertion service. @@ -150,7 +157,7 @@ repos: standards_referenced: [cccev, json-schema, openapi, sd-jwt-vc] exclude_docsets: [v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3, beta-2026-06-12] docset_overrides: - - docsets: [v0.18.0, v0.17.0] + - docsets: [v0.20.0, v0.18.0, v0.17.0] standards_referenced: [cccev, json-schema, openapi, sd-jwt-vc] last_reviewed: unreviewed description: Approved Version 1 product concept covering the boundary, data model, trust and privacy invariants, native API, and acceptance set. @@ -163,7 +170,7 @@ repos: standards_referenced: [json-schema, openapi, sd-jwt-vc] exclude_docsets: [v0.17.0, v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3, beta-2026-06-12] docset_overrides: - - docsets: [v0.18.0] + - docsets: [v0.20.0, v0.18.0] standards_referenced: [json-schema, openapi, sd-jwt-vc] last_reviewed: unreviewed description: Complete reference for the editable Evidence authoring project, its validation layers, local key material, and access policies. @@ -176,7 +183,7 @@ repos: standards_referenced: [] exclude_docsets: [v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3, beta-2026-06-12] docset_overrides: - - docsets: [v0.18.0, v0.17.0] + - docsets: [v0.20.0, v0.18.0, v0.17.0] standards_referenced: [] last_reviewed: unreviewed description: Deterministic local curl checkpoint against the Evidence Gateway server with a mock source and an in-memory test JWKS. @@ -189,7 +196,7 @@ repos: standards_referenced: [sd-jwt-vc] exclude_docsets: [v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3, beta-2026-06-12] docset_overrides: - - docsets: [v0.18.0, v0.17.0] + - docsets: [v0.20.0, v0.18.0, v0.17.0] standards_referenced: [sd-jwt-vc] last_reviewed: unreviewed description: Source-testing contract with the deterministic mock matrix, opt-in public demo smoke tests, and credential handling rules. @@ -202,7 +209,7 @@ repos: standards_referenced: [sd-jwt-vc] exclude_docsets: [v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3, beta-2026-06-12] docset_overrides: - - docsets: [v0.18.0, v0.17.0] + - docsets: [v0.20.0, v0.18.0, v0.17.0] standards_referenced: [sd-jwt-vc] last_reviewed: unreviewed description: Deterministic local demo that issues one assertion in both later-verifiable formats and re-verifies the credential offline. @@ -215,7 +222,7 @@ repos: standards_referenced: [openapi, sd-jwt-vc] exclude_docsets: [v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3, beta-2026-06-12] docset_overrides: - - docsets: [v0.18.0, v0.17.0] + - docsets: [v0.20.0, v0.18.0, v0.17.0] standards_referenced: [openapi, sd-jwt-vc] last_reviewed: unreviewed description: Supported deployment shape, requester authority and purpose duties, required configuration and secrets, and readiness, audit, and key obligations. @@ -228,7 +235,7 @@ repos: standards_referenced: [] exclude_docsets: [v0.16.3, v0.16.2, v0.16.1, v0.16.0, v0.15.2, v0.15.1, v0.15.0, v0.13.0, v0.12.2, v0.12.1, v0.12.0, v0.11.0, v0.10.0, v0.9.0, v0.8.4, v0.8.3, v0.8.2, v0.8.1, beta-5, beta-4, beta-3, beta-2026-06-12] docset_overrides: - - docsets: [v0.18.0, v0.17.0] + - docsets: [v0.20.0, v0.18.0, v0.17.0] standards_referenced: [] last_reviewed: unreviewed description: Measured baseline of the audit-durability throughput trade and the deferred work that would recover most of the cost. diff --git a/docs/site/src/data/standards.yaml b/docs/site/src/data/standards.yaml index ef003f0e0..6fb54eff1 100644 --- a/docs/site/src/data/standards.yaml +++ b/docs/site/src/data/standards.yaml @@ -93,7 +93,7 @@ - label: Retired Relay V1 OGC Features API tests url: https://github.com/registrystack/registry-stack/blob/d45761a0104bd3d9c2e4b4db391d4223f289bd44/crates/registry-relay/tests/ogc_api.rs - label: Relay V2 standards alignment, intentional gaps - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/products/relay-v2/STANDARDS-ALIGNMENT.md + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/products/relay-v2/STANDARDS-ALIGNMENT.md last_checked: 2026-08-11 notes: No maintained Registry Stack surface implements OGC API Features. The feature-gated routes belonged to the retired Relay V1 runtime and the pinned V1 tests are the record of them. The contract-compiled Relay names OGC API Features an intentional gap. Its spatial surface is the CRS84 Point profile serialized as GeoJSON and JSON-FG on a governed operation, which is a wire format and not a feature service. - id: ogc-api-edr @@ -111,7 +111,7 @@ - label: Retired Relay V1 OGC EDR API tests url: https://github.com/registrystack/registry-stack/blob/d45761a0104bd3d9c2e4b4db391d4223f289bd44/crates/registry-relay/tests/ogc_edr_api.rs - label: Relay V2 standards alignment, intentional gaps - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/products/relay-v2/STANDARDS-ALIGNMENT.md + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/products/relay-v2/STANDARDS-ALIGNMENT.md last_checked: 2026-08-11 notes: No maintained Registry Stack surface implements OGC API EDR. The area routes belonged to the retired Relay V1 runtime and the pinned V1 tests are the record of them. The contract-compiled Relay names EDR an intentional gap and offers no area query, no coordinate transformation, and no generic spatial database API. - id: geojson @@ -168,9 +168,9 @@ - GET /openapi.json evidence_docs: - label: Relay V2 OpenAPI generation - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/artifacts.rs + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/artifacts.rs - label: Relay V2 OpenAPI route - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/api.rs + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/api.rs - label: Registry Notary generated OpenAPI document (pinned) url: https://github.com/registrystack/registry-stack/blob/d45761a0104bd3d9c2e4b4db391d4223f289bd44/products/notary/openapi/registry-notary.openapi.json last_checked: 2026-08-11 @@ -191,9 +191,9 @@ - generated resource node shapes evidence_docs: - label: Relay V2 SHACL shape generation - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/semantics.rs + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/semantics.rs - label: Relay V2 generated artifact inventory - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/artifacts.rs + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/artifacts.rs - label: Registry Manifest README url: https://github.com/registrystack/registry-stack/blob/d45761a0104bd3d9c2e4b4db391d4223f289bd44/products/manifest/README.md last_checked: 2026-08-11 @@ -235,9 +235,9 @@ - static discovery bundle evidence_docs: - label: Relay V2 JSON Schema generation - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/semantics.rs + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/semantics.rs - label: Relay V2 generated artifact inventory - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/artifacts.rs + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/artifacts.rs - label: Registry Manifest form schema fixture (Draft 2020-12) url: https://github.com/registrystack/registry-stack/blob/d45761a0104bd3d9c2e4b4db391d4223f289bd44/products/manifest/fixtures/cpsv-ap/health-linked-child-support.form.schema.json last_checked: 2026-08-11 @@ -261,9 +261,9 @@ - CCCEV render output evidence_docs: - label: Relay V2 JSON-LD context and vocabulary generation - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/semantics.rs + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/semantics.rs - label: Relay V2 JSON-LD response representation - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/api.rs + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/api.rs - label: Registry Notary CCCEV renderer url: https://github.com/registrystack/registry-stack/blob/d45761a0104bd3d9c2e4b4db391d4223f289bd44/crates/registry-notary-server/src/runtime.rs - label: Registry Manifest CPSV-AP JSON-LD fixture @@ -439,9 +439,9 @@ - dataflow and data structure definition reads evidence_docs: - label: Relay V2 SDMX read routes - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/sdmx_http.rs + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/sdmx_http.rs - label: Relay V2 SDMX representation profile - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/sdmx/representation.rs + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/sdmx/representation.rs - label: Relay V2 authoring guide url: /configure/relay/ last_checked: 2026-08-11 @@ -509,9 +509,9 @@ - declared contract alignment target evidence_docs: - label: Relay V2 alignment target declaration - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/contract.rs + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/contract.rs - label: Relay V2 alignment target validation - url: https://github.com/registrystack/registry-stack/blob/v0.19.0/crates/registry-relay-v2/src/compiler.rs + url: https://github.com/registrystack/registry-stack/blob/v0.20.0/crates/registry-relay-v2/src/compiler.rs last_checked: 2026-08-11 notes: Relay explores a protected consultation gateway model rather than a single uniform CRUD platform. A registry contract may declare GovStack as an alignment target, but the compiler accepts that declaration only when its status is `directional`, and it stays descriptive metadata echoed back on the service document. It binds no vocabulary, compiles no route, and is not a conformance claim. - id: universal-dpi-safeguards diff --git a/products/evidence/generated/registry-evidence.openapi.json b/products/evidence/generated/registry-evidence.openapi.json index ad04e10ed..ef4dfb67a 100644 --- a/products/evidence/generated/registry-evidence.openapi.json +++ b/products/evidence/generated/registry-evidence.openapi.json @@ -1682,7 +1682,7 @@ "info": { "description": "Minimum-disclosure signed assertion service, Version 1.", "title": "Registry Evidence API", - "version": "0.19.0" + "version": "0.20.0" }, "openapi": "3.1.0", "paths": { diff --git a/products/manifest/CHANGELOG.md b/products/manifest/CHANGELOG.md index ba742a417..c972faf59 100644 --- a/products/manifest/CHANGELOG.md +++ b/products/manifest/CHANGELOG.md @@ -7,6 +7,8 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [0.20.0] - 2026-08-12 + - BREAKING: `registry-manifest/v1` no longer reserves the `registry_relay` vocabulary prefix or expands it to the retired Registry Relay V1 namespace. Replace those compact identifiers with absolute IRIs, or declare diff --git a/products/manifest/docs/release-notes.md b/products/manifest/docs/release-notes.md index 887907d0a..9cd3be7c0 100644 --- a/products/manifest/docs/release-notes.md +++ b/products/manifest/docs/release-notes.md @@ -2,6 +2,14 @@ ## Unreleased +## 0.20.0 + +- BREAKING: `registry-manifest/v1` no longer reserves or expands the + `registry_relay` vocabulary prefix. Replace affected compact identifiers + with absolute IRIs, or declare `vocabularies.registry_relay` with an + institution-owned active HTTP(S) namespace, then validate and republish the + rendered metadata. + ## 0.19.0 - Registry Manifest has no user-visible format changes in this release. diff --git a/products/platform/CHANGELOG.md b/products/platform/CHANGELOG.md index 4d4afd1b6..34deb192b 100644 --- a/products/platform/CHANGELOG.md +++ b/products/platform/CHANGELOG.md @@ -2,6 +2,17 @@ ## Unreleased +## v0.20.0 - 2026-08-12 + +- Shared HTTP utilities now separate client and server boundaries. Evidence, + Relay, and Registry Mint reuse the bounded outbound HTTP, private-key-JWT, + token, destination, and transport checks without importing a retired product + configuration model. +- Removed unused Relay V1 configuration, audit, operations, and policy + primitives from the current workspace. Current products keep the smaller + shared authentication, cryptography, HTTP, SD-JWT, SQLite, and testing + foundations they exercise. + ## v0.19.0 - 2026-08-11 - The shared SQLite boundary now applies one end-to-end deadline to admission, diff --git a/release/manifests/registry-stack-beta-30.yaml b/release/manifests/registry-stack-beta-30.yaml new file mode 100644 index 000000000..7ca4c1548 --- /dev/null +++ b/release/manifests/registry-stack-beta-30.yaml @@ -0,0 +1,28 @@ +stack: + release: beta-30 + version: 0.20.0 + source_repo: registrystack/registry-stack + source_tag: v0.20.0 + +artifacts: + registry-manifest: 0.20.0 + relay: 0.20.0 + relayctl: 0.20.0 + evidence: 0.20.0 + evidencectl: 0.20.0 + mint: 0.20.0 + evidence-oid4vci: 0.20.0 + evidencectl-installer: 0.20.0 + evidence-client-node: 0.20.0 + evidence-client-python: 0.20.0 + relay-installer: 0.20.0 + registry-docs: 0.20.0 + relay-client-node: 0.20.0 + relay-client-python: 0.20.0 + +identifier_catalog: + path: products/identifiers/generated/catalog.v1.json + sha256: f5523ec180e3c3d18f7f18a1704d3932e84a66f03ead0e9124d3c6d366aa20f0 + entry_count: 47 + +external: {} diff --git a/release/notes/v0.20.0.md b/release/notes/v0.20.0.md new file mode 100644 index 000000000..048e389db --- /dev/null +++ b/release/notes/v0.20.0.md @@ -0,0 +1,87 @@ +# Registry Stack v0.20.0 + +Registry Stack v0.20.0 is the beta-30 release. It completes the transition to +the current Relay V2 and Evidence product surface, publishes Relay client +packages and a versioned documentation archive, and removes the remaining +Relay V1 and `registryctl` source. + +## Product scope + +- Registry Manifest ships `registry-manifest` for Linux amd64. +- Relay ships the `relay` runtime for Linux amd64, `relayctl` for Linux amd64, + Linux arm64, and macOS arm64, and matching Node.js and Python client assets. +- Evidence ships `evidence`, `evidencectl`, Registry Mint, + `evidence-oid4vci`, and the Node.js and Python relying-party clients. +- Crosswalk is no longer a current release input. Historical manifests retain + their immutable Crosswalk pins. + +## Breaking changes + +- BREAKING: `registry-manifest/v1` no longer reserves or expands the + `registry_relay` vocabulary prefix. Replace affected compact identifiers + with absolute IRIs, or declare `vocabularies.registry_relay` with an + institution-owned active HTTP(S) namespace, then validate and republish the + rendered metadata. +- BREAKING: Evidence definitions now require `holderBoundBatchMaxSize`. + Upgrade the Evidence runtime, Evidence clients, and the OID4VCI adapter + together. New clients interpret an older response without this field as a + batch size of `1`; older strict clients reject a response that contains the + field. +- The retired Relay V1 runtime and `registryctl` have been removed from the + source tree. Continue to use the `relay` and `relayctl` identities introduced + in v0.19.0; Relay V1 configuration is not an upgrade input for Relay V2. + +## Relay changes + +- The release installer installs the Relay V2 runtime on Linux amd64 and + verifies its checksum before installation. `relayctl` remains a plain + release asset for Linux amd64, Linux arm64, and macOS arm64. +- Relay V2 has language-server and editor support for registry contracts. +- Rust, Node.js, and Python clients cover the fixed Relay V2 route inventory, + bearer and private-key-JWT authentication, explicit pagination, conditional + requests, and bounded response validation. +- Registry Mint can issue Relay-compatible access tokens from its governed + client registry. + +## Evidence changes + +- The OID4VCI wallet-delivery service completes its delivery and recovery + profile, including holder proof, transaction state, observability, and the + tested Inji interoperability profile. +- Evidence server boundaries align with the Relay-shaped fixed-source + contract, including shared HTTP security and outbound request handling. +- Evidencectl adds reviewed local source API mocks, including the live FHIR R4 + tutorial path, and hardens generated mock constraints and request matching. +- CLI command reference pages are generated from the live Clap command trees. + +## Packaging and installation + +- The GitHub Release contains the current Manifest, Relay, Evidence, client, + installer, and Registry Docs payloads, plus checksums, software bills of + materials, and security evidence. Node.js and Python client packages are + GitHub Release assets; this release does not publish them to npm or PyPI. +- The public Relay image is `ghcr.io/registrystack/relay:v0.20.0`. Publication + promotes the verified candidate digest without rebuilding it. +- The authenticated Registry Docs archive is published at `/v/0.20.0/` and + promoted to the canonical documentation route. +- The release binds the authoritative public identifier catalog with 47 + active entries to its exact source digest. + +## Upgrade requirements + +- Apply the Registry Manifest vocabulary migration before validating metadata + with v0.20.0. +- Upgrade the Evidence runtime, clients, and OID4VCI adapter together when the + deployment uses holder-bound batching. +- Install Relay clients from the GitHub Release matching the deployed Relay + version. Do not mix client packages from another Registry Stack release. +- Replace any remaining source or automation references to `registry-relay` + or `registryctl` with `relay` and `relayctl`. + +## Release boundaries + +- Beta publication promotes one verified candidate from protected `main` + without rebuilding payloads, documentation, or the Relay image manifest. +- Hosted deployments, external conformance, package-registry publication, + and adopter-specific rollout exercises remain outside this release's + critical path. From c8368cc5c17e3c6c3184740ea6f68f186efde565 Mon Sep 17 00:00:00 2001 From: Jeremi Joslin Date: Wed, 12 Aug 2026 16:22:47 +0700 Subject: [PATCH 2/6] fix(docs): lock v0.20.0 release archive Signed-off-by: Jeremi Joslin --- docs/site/src/data/archive-lock.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/site/src/data/archive-lock.yaml b/docs/site/src/data/archive-lock.yaml index 75afff96a..f42598a42 100644 --- a/docs/site/src/data/archive-lock.yaml +++ b/docs/site/src/data/archive-lock.yaml @@ -78,3 +78,7 @@ archives: bundle_sha256: 1e429d2167358c950b531021ff70b77b251ec4a73cb3b34bb718b07bd558f047 root_tree_sha256: 3e9a0a6447b121884a7318a6a560491094aa2f5c345fdbe160833da1877ecc86 version_tree_sha256: 82ff1ab0c7155847c3f11e4558d7d8a9329fa6d1ed7ee8cc61248cd9a402538f + v0.20.0: + bundle_sha256: dfedecd58a4b70aacec2d94fac2c3b72a116eaa7aeca305939febe4b4dccd942 + root_tree_sha256: 04e905fd1f0085335eceeeb6268f5cab5fefdb24b6b1abe4d538bb86c69dc2aa + version_tree_sha256: 45e38037b944b8c14fac84befc8fd9ef18cbdbb7dabccc882cc9c19a3f31da41 From f7e9a9674122216cccfc91f21ceb121418cb9c72 Mon Sep 17 00:00:00 2001 From: Jeremi Joslin Date: Wed, 12 Aug 2026 16:46:34 +0700 Subject: [PATCH 3/6] fix(manifest): refresh v0.20 fuzz lockfile Signed-off-by: Jeremi Joslin --- products/manifest/fuzz/Cargo.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/products/manifest/fuzz/Cargo.lock b/products/manifest/fuzz/Cargo.lock index 784d88d8e..bb44d4b36 100644 --- a/products/manifest/fuzz/Cargo.lock +++ b/products/manifest/fuzz/Cargo.lock @@ -188,7 +188,7 @@ checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" [[package]] name = "registry-manifest-cli" -version = "0.19.0" +version = "0.20.0" dependencies = [ "registry-manifest-core", "serde", @@ -199,7 +199,7 @@ dependencies = [ [[package]] name = "registry-manifest-core" -version = "0.19.0" +version = "0.20.0" dependencies = [ "oxiri", "registry-platform-canonical-json", @@ -223,7 +223,7 @@ dependencies = [ [[package]] name = "registry-platform-canonical-json" -version = "0.19.0" +version = "0.20.0" dependencies = [ "ryu-js", "serde", From ae95feac169e16653929c89b4e2f9e0a0c410950 Mon Sep 17 00:00:00 2001 From: Jeremi Joslin Date: Wed, 12 Aug 2026 16:46:34 +0700 Subject: [PATCH 4/6] fix(platform): refresh v0.20 fuzz lockfile Signed-off-by: Jeremi Joslin --- products/platform/fuzz/Cargo.lock | 98 ++++++++++++++++++++++++++++--- 1 file changed, 91 insertions(+), 7 deletions(-) diff --git a/products/platform/fuzz/Cargo.lock b/products/platform/fuzz/Cargo.lock index 6602fa8c6..c9ec04703 100644 --- a/products/platform/fuzz/Cargo.lock +++ b/products/platform/fuzz/Cargo.lock @@ -2,6 +2,15 @@ # It is not intended for manual editing. version = 4 +[[package]] +name = "android_system_properties" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae221649c9976a6f6c56ae1facf410f3ddb33cc661c4b7b61020a912d4237fbc" +dependencies = [ + "libc", +] + [[package]] name = "arbitrary" version = "1.4.2" @@ -143,6 +152,19 @@ dependencies = [ "rand_core 0.10.1", ] +[[package]] +name = "chrono" +version = "0.4.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1aa79e62e7697b8e29b513a68abacf485adcd1fe8284a4316c5ae868e6633327" +dependencies = [ + "iana-time-zone", + "js-sys", + "num-traits", + "wasm-bindgen", + "windows-link", +] + [[package]] name = "cmake" version = "0.1.58" @@ -826,6 +848,30 @@ dependencies = [ "tracing", ] +[[package]] +name = "iana-time-zone" +version = "0.1.65" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e31bc9ad994ba00e440a8aa5c9ef0ec67d5cb5e5cb0cc7f8b744a35b389cc470" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "log", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + [[package]] name = "icu_collections" version = "2.2.0" @@ -1468,7 +1514,7 @@ dependencies = [ [[package]] name = "registry-platform-authcommon" -version = "0.19.0" +version = "0.20.0" dependencies = [ "base64", "registry-platform-crypto", @@ -1483,7 +1529,7 @@ dependencies = [ [[package]] name = "registry-platform-canonical-json" -version = "0.19.0" +version = "0.20.0" dependencies = [ "ryu-js", "serde", @@ -1493,7 +1539,7 @@ dependencies = [ [[package]] name = "registry-platform-crypto" -version = "0.19.0" +version = "0.20.0" dependencies = [ "async-trait", "aws-lc-rs", @@ -1534,13 +1580,16 @@ dependencies = [ [[package]] name = "registry-platform-httputil" -version = "0.19.0" +version = "0.20.0" dependencies = [ + "async-trait", "base64", "bytes", + "chrono", "hickory-resolver", "http", "ipnet", + "registry-platform-authcommon", "registry-platform-canonical-json", "registry-platform-crypto", "reqwest", @@ -1557,7 +1606,7 @@ dependencies = [ [[package]] name = "registry-platform-oidc" -version = "0.19.0" +version = "0.20.0" dependencies = [ "base64", "jsonwebtoken", @@ -1572,7 +1621,7 @@ dependencies = [ [[package]] name = "registry-platform-sdjwt" -version = "0.19.0" +version = "0.20.0" dependencies = [ "base64", "getrandom 0.4.3", @@ -1588,7 +1637,7 @@ dependencies = [ [[package]] name = "registry-platform-sqlite" -version = "0.19.0" +version = "0.20.0" dependencies = [ "rusqlite", "rustix", @@ -2451,6 +2500,41 @@ dependencies = [ "windows-sys 0.61.2", ] +[[package]] +name = "windows-core" +version = "0.62.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-link", + "windows-result", + "windows-strings", +] + +[[package]] +name = "windows-implement" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "windows-interface" +version = "0.59.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "windows-link" version = "0.2.1" From c7a9a7af73c1c7b1930e782c368040f6c63a691a Mon Sep 17 00:00:00 2001 From: Jeremi Joslin Date: Wed, 12 Aug 2026 17:13:19 +0700 Subject: [PATCH 5/6] fix(docs): keep v0.20 archive links self-contained Signed-off-by: Jeremi Joslin --- docs/site/src/content/docs/changelog.mdx | 2 +- .../relay-v1-and-registryctl-retirement-2026-08-11.mdx | 2 +- docs/site/src/data/archive-lock.yaml | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/site/src/content/docs/changelog.mdx b/docs/site/src/content/docs/changelog.mdx index d9251dc86..c5dd8bbfd 100644 --- a/docs/site/src/content/docs/changelog.mdx +++ b/docs/site/src/content/docs/changelog.mdx @@ -74,7 +74,7 @@ Relay identities: tooling, operational posture, security, and terminology against the V2 contracts. - Recorded the [Relay V1 and registryctl retirement - decision](/decisions/relay-v1-and-registryctl-retirement-2026-08-11/) and + decision](../decisions/relay-v1-and-registryctl-retirement-2026-08-11/) and redirected the retired routes. - Documented the Relay installer and the `ghcr.io/registrystack/relay:v0.19.0` image. `relayctl` has no installer; it is taken from the release assets or diff --git a/docs/site/src/content/docs/decisions/relay-v1-and-registryctl-retirement-2026-08-11.mdx b/docs/site/src/content/docs/decisions/relay-v1-and-registryctl-retirement-2026-08-11.mdx index 4f9723d91..e2bd7aa95 100644 --- a/docs/site/src/content/docs/decisions/relay-v1-and-registryctl-retirement-2026-08-11.mdx +++ b/docs/site/src/content/docs/decisions/relay-v1-and-registryctl-retirement-2026-08-11.mdx @@ -67,7 +67,7 @@ question. reference pages for the V1 runtime and `registryctl` are removed from the current docset. Published archives keep them at their own versions. - Retired routes redirect rather than 404, following the pattern established by - the [Registry Notary retirement](/decisions/notary-retirement-2026-08-03/). + the [Registry Notary retirement](../notary-retirement-2026-08-03/). - The site no longer pins a Relay OpenAPI document. Relay V2 serves its own description at `GET /openapi.json`, generated from the adopter's registry contract, so there is no single product-level document to publish. diff --git a/docs/site/src/data/archive-lock.yaml b/docs/site/src/data/archive-lock.yaml index f42598a42..76d51c23a 100644 --- a/docs/site/src/data/archive-lock.yaml +++ b/docs/site/src/data/archive-lock.yaml @@ -79,6 +79,6 @@ archives: root_tree_sha256: 3e9a0a6447b121884a7318a6a560491094aa2f5c345fdbe160833da1877ecc86 version_tree_sha256: 82ff1ab0c7155847c3f11e4558d7d8a9329fa6d1ed7ee8cc61248cd9a402538f v0.20.0: - bundle_sha256: dfedecd58a4b70aacec2d94fac2c3b72a116eaa7aeca305939febe4b4dccd942 - root_tree_sha256: 04e905fd1f0085335eceeeb6268f5cab5fefdb24b6b1abe4d538bb86c69dc2aa - version_tree_sha256: 45e38037b944b8c14fac84befc8fd9ef18cbdbb7dabccc882cc9c19a3f31da41 + bundle_sha256: f760283567fb2bfe09ee667248606450df69967e6df84968a4365d0887912e4e + root_tree_sha256: 1e2d5d44637c3259db55c5e96d22f39f7a42a93dbc2215eefaa2aea2313f3499 + version_tree_sha256: 824ba889718b49134148334ac7d403e4ad20b372a7a65a729686555775b496e0 From 2842599a889fd8ae9d7b9b7bd4961d800afddbb6 Mon Sep 17 00:00:00 2001 From: Jeremi Joslin Date: Wed, 12 Aug 2026 17:24:14 +0700 Subject: [PATCH 6/6] fix(docs): use canonical Ubuntu v0.20 archive lock Signed-off-by: Jeremi Joslin --- docs/site/src/data/archive-lock.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/site/src/data/archive-lock.yaml b/docs/site/src/data/archive-lock.yaml index 76d51c23a..1407bd68f 100644 --- a/docs/site/src/data/archive-lock.yaml +++ b/docs/site/src/data/archive-lock.yaml @@ -79,6 +79,6 @@ archives: root_tree_sha256: 3e9a0a6447b121884a7318a6a560491094aa2f5c345fdbe160833da1877ecc86 version_tree_sha256: 82ff1ab0c7155847c3f11e4558d7d8a9329fa6d1ed7ee8cc61248cd9a402538f v0.20.0: - bundle_sha256: f760283567fb2bfe09ee667248606450df69967e6df84968a4365d0887912e4e - root_tree_sha256: 1e2d5d44637c3259db55c5e96d22f39f7a42a93dbc2215eefaa2aea2313f3499 + bundle_sha256: 83c5b7f11ecea07d263533907e3ba53b438c84fb4e932ac87960d1b93b1f0534 + root_tree_sha256: 75112e03bf2810912693bcffcf6ee02e934ce7d2e3ddae283774f09d0349a3a5 version_tree_sha256: 824ba889718b49134148334ac7d403e4ad20b372a7a65a729686555775b496e0