From c25c11d1a02cf1c16ba23002dc8680c847cc23b8 Mon Sep 17 00:00:00 2001 From: ryan Date: Sun, 11 Aug 2024 17:31:10 -0400 Subject: [PATCH] release keyfork v0.2.4 --- CHANGELOG.md | 131 ++++++++++++++++++ Cargo.lock | 18 +-- Cargo.toml | 2 +- crates/daemon/keyforkd-client/Cargo.toml | 2 +- crates/daemon/keyforkd/Cargo.toml | 2 +- .../derive/keyfork-derive-openpgp/Cargo.toml | 2 +- .../keyfork-derive-path-data/Cargo.toml | 2 +- crates/derive/keyfork-derive-util/Cargo.toml | 2 +- crates/keyfork-shard/Cargo.toml | 2 +- crates/keyfork/Cargo.toml | 2 +- crates/util/keyfork-mnemonic/Cargo.toml | 2 +- crates/util/keyfork-prompt/Cargo.toml | 2 +- scripts/make-changelog-blurb.sh | 3 +- scripts/sign-new-versions.sh | 2 +- 14 files changed, 153 insertions(+), 21 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b841852..f0a99ed 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,134 @@ +# Keyfork v0.2.4 + +This release includes a lot of "maintenance" changes, without any changes in +end-user functionality. + +### Changes in keyfork: + +The most significant change in this release is the reorganization of some of +the subcommands, where they would be better as enum-traits, such as `keyfork +derive` and `keyfork wizard`. + +``` +b254ba7 cleanup post-merge +58d3c34 Merge branch 'main' into ryansquared/staging-since-latest +35f57fc Merge branch 'ryansquared/keyfork-mnemonic-refactors' +a2eb5fd bump dependencies with listed vulnerabilities (not affected) +5219c5a keyfork: enum-trait-ify choose-your-own commands +b26f296 keyfork-derive-path-data: move all pathcrafting here +35ab5e6 keyfork-mnemonic-util => keyfork-mnemonic +f5627e5 keyfork-mnemonic-util: impl try_from_slice and from_array +02e5b54 keyfork-mnemonic-util::generate_seed: return const size array +``` + +### Changes in keyfork-derive-openpgp: + +``` +b254ba7 cleanup post-merge +35f57fc Merge branch 'ryansquared/keyfork-mnemonic-refactors' +a2eb5fd bump dependencies with listed vulnerabilities (not affected) +b26f296 keyfork-derive-path-data: move all pathcrafting here +``` + +### Changes in keyfork-derive-path-data: + +This change now centralizes all special Keyfork paths. This means crates should +no longer be required to implement their own path parsing logic. + +``` +b26f296 keyfork-derive-path-data: move all pathcrafting here +``` + +### Changes in keyfork-derive-util: + +``` +35ab5e6 keyfork-mnemonic-util => keyfork-mnemonic +``` + +### Changes in keyfork-mnemonic: + +`keyfork-mnemonic-util` has finally been renamed to `keyfork-mnemonic`. The +method names `as_bytes() => as_slice()`, `to_bytes() => to_vec()`, and +`into_bytes() => into_vec()`, and the function names +`from_bytes() => try_from_slice()` and +`from_nonstandard_bytes() => from_array()`, have been implemented to more +closely represent the native types they are representing. Additionally, +`Mnemonic::generate_seed()` has been modified to return a constant size array; +this is a breaking change, but should have minimal impact. + +``` +35ab5e6 keyfork-mnemonic-util => keyfork-mnemonic +3ee81b6 keyfork-mnemonic-util: impl as_slice to_vec into_vec +f5627e5 keyfork-mnemonic-util: impl try_from_slice and from_array +02e5b54 keyfork-mnemonic-util::generate_seed: return const size array +``` + +### Changes in keyfork-prompt: + +``` +35ab5e6 keyfork-mnemonic-util => keyfork-mnemonic +``` + +### Changes in keyfork-shard: + +``` +58d3c34 Merge branch 'main' into ryansquared/staging-since-latest +35ab5e6 keyfork-mnemonic-util => keyfork-mnemonic +f5627e5 keyfork-mnemonic-util: impl try_from_slice and from_array +``` + +### Changes in keyforkd: + +``` +35ab5e6 keyfork-mnemonic-util => keyfork-mnemonic +02e5b54 keyfork-mnemonic-util::generate_seed: return const size array +536e6da keyforkd{,-client}: lots of documentationings +``` + +### Changes in keyforkd-client: + +``` +536e6da keyforkd{,-client}: lots of documentationings +``` + +# Keyfork v0.2.3 + +This release includes a bugfix for the wizard where the wizard was too strict +about when keys were "alive". + +### Changes in keyfork: + +``` +dd4354f keyfork: bump keyfork-shard +``` + +### Changes in keyfork-shard: + +``` +ba64db8 update Cargo.toml and Cargo.lock +fa84a2a keyfork-shard: Be less strict about keys +``` + +# Keyfork v0.2.2 + +This release adds a new wizard, intended to be used at DEFCON 32. + +### Changes in keyfork: + +``` +8d40d26 keyfork: add `bottoms-up` wizard +``` + +### Changes in keyfork-derive-openpgp: + +This change also includes a minor change, allowing the derivation path for +`keyfork-derive-openpg` to derive further than two paths, which was useful in +the testing of the wizard. + +``` +8d40d26 keyfork: add `bottoms-up` wizard +``` + # Keyfork v0.2.1 This release contains an emergency bugfix for Keyfork Shard, which previously diff --git a/Cargo.lock b/Cargo.lock index 7b0559b..ef6fcb2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1796,7 +1796,7 @@ dependencies = [ [[package]] name = "keyfork" -version = "0.2.3" +version = "0.2.4" dependencies = [ "card-backend-pcsc", "clap", @@ -1867,7 +1867,7 @@ dependencies = [ [[package]] name = "keyfork-derive-openpgp" -version = "0.1.2" +version = "0.1.3" dependencies = [ "anyhow", "ed25519-dalek", @@ -1880,7 +1880,7 @@ dependencies = [ [[package]] name = "keyfork-derive-path-data" -version = "0.1.1" +version = "0.1.2" dependencies = [ "keyfork-derive-util", "once_cell", @@ -1888,7 +1888,7 @@ dependencies = [ [[package]] name = "keyfork-derive-util" -version = "0.2.0" +version = "0.2.1" dependencies = [ "digest", "ed25519-dalek", @@ -1924,7 +1924,7 @@ dependencies = [ [[package]] name = "keyfork-mnemonic" -version = "0.3.0" +version = "0.4.0" dependencies = [ "bip39", "hex", @@ -1938,7 +1938,7 @@ dependencies = [ [[package]] name = "keyfork-prompt" -version = "0.1.1" +version = "0.1.2" dependencies = [ "keyfork-bug", "keyfork-crossterm", @@ -1960,7 +1960,7 @@ dependencies = [ [[package]] name = "keyfork-shard" -version = "0.2.2" +version = "0.2.3" dependencies = [ "aes-gcm", "anyhow", @@ -2010,7 +2010,7 @@ dependencies = [ [[package]] name = "keyforkd" -version = "0.1.1" +version = "0.1.2" dependencies = [ "bincode", "hex-literal", @@ -2033,7 +2033,7 @@ dependencies = [ [[package]] name = "keyforkd-client" -version = "0.2.0" +version = "0.2.1" dependencies = [ "bincode", "ed25519-dalek", diff --git a/Cargo.toml b/Cargo.toml index 1ea3b6e..09d88b8 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -44,7 +44,7 @@ keyfork-bug = { version = "0.1.0", path = "crates/util/keyfork-bug", registry = keyfork-crossterm = { version = "0.27.1", path = "crates/util/keyfork-crossterm", registry = "distrust", default-features = false } keyfork-entropy = { version = "0.1.1", path = "crates/util/keyfork-entropy", registry = "distrust", default-features = false } keyfork-frame = { version = "0.1.0", path = "crates/util/keyfork-frame", registry = "distrust", default-features = false } -keyfork-mnemonic = { version = "0.3.0", path = "crates/util/keyfork-mnemonic", registry = "distrust", default-features = false } +keyfork-mnemonic = { version = "0.4.0", path = "crates/util/keyfork-mnemonic", registry = "distrust", default-features = false } keyfork-prompt = { version = "0.1.1", path = "crates/util/keyfork-prompt", registry = "distrust", default-features = false } keyfork-slip10-test-data = { version = "0.1.0", path = "crates/util/keyfork-slip10-test-data", registry = "distrust", default-features = false } smex = { version = "0.1.0", path = "crates/util/smex", registry = "distrust", default-features = false } diff --git a/crates/daemon/keyforkd-client/Cargo.toml b/crates/daemon/keyforkd-client/Cargo.toml index d8781fb..b56e8c0 100644 --- a/crates/daemon/keyforkd-client/Cargo.toml +++ b/crates/daemon/keyforkd-client/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "keyforkd-client" -version = "0.2.0" +version = "0.2.1" edition = "2021" license = "MIT" diff --git a/crates/daemon/keyforkd/Cargo.toml b/crates/daemon/keyforkd/Cargo.toml index 76e4b44..0bc3381 100644 --- a/crates/daemon/keyforkd/Cargo.toml +++ b/crates/daemon/keyforkd/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "keyforkd" -version = "0.1.1" +version = "0.1.2" edition = "2021" license = "AGPL-3.0-only" diff --git a/crates/derive/keyfork-derive-openpgp/Cargo.toml b/crates/derive/keyfork-derive-openpgp/Cargo.toml index 17d891b..9746703 100644 --- a/crates/derive/keyfork-derive-openpgp/Cargo.toml +++ b/crates/derive/keyfork-derive-openpgp/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "keyfork-derive-openpgp" -version = "0.1.2" +version = "0.1.3" edition = "2021" license = "AGPL-3.0-only" diff --git a/crates/derive/keyfork-derive-path-data/Cargo.toml b/crates/derive/keyfork-derive-path-data/Cargo.toml index d8c47b2..d097cb9 100644 --- a/crates/derive/keyfork-derive-path-data/Cargo.toml +++ b/crates/derive/keyfork-derive-path-data/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "keyfork-derive-path-data" -version = "0.1.1" +version = "0.1.2" edition = "2021" license = "MIT" diff --git a/crates/derive/keyfork-derive-util/Cargo.toml b/crates/derive/keyfork-derive-util/Cargo.toml index e88cb3b..6effcad 100644 --- a/crates/derive/keyfork-derive-util/Cargo.toml +++ b/crates/derive/keyfork-derive-util/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "keyfork-derive-util" -version = "0.2.0" +version = "0.2.1" edition = "2021" license = "MIT" diff --git a/crates/keyfork-shard/Cargo.toml b/crates/keyfork-shard/Cargo.toml index f9efec7..3d60e0c 100644 --- a/crates/keyfork-shard/Cargo.toml +++ b/crates/keyfork-shard/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "keyfork-shard" -version = "0.2.2" +version = "0.2.3" edition = "2021" license = "AGPL-3.0-only" diff --git a/crates/keyfork/Cargo.toml b/crates/keyfork/Cargo.toml index 53cd193..cfcebe1 100644 --- a/crates/keyfork/Cargo.toml +++ b/crates/keyfork/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "keyfork" -version = "0.2.3" +version = "0.2.4" edition = "2021" license = "AGPL-3.0-only" diff --git a/crates/util/keyfork-mnemonic/Cargo.toml b/crates/util/keyfork-mnemonic/Cargo.toml index c849f28..2097c7e 100644 --- a/crates/util/keyfork-mnemonic/Cargo.toml +++ b/crates/util/keyfork-mnemonic/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "keyfork-mnemonic" -version = "0.3.0" +version = "0.4.0" description = "Utilities to generate and manage seeds based on BIP-0039 mnemonics." repository = "https://git.distrust.co/public/keyfork" edition = "2021" diff --git a/crates/util/keyfork-prompt/Cargo.toml b/crates/util/keyfork-prompt/Cargo.toml index 9169974..a7ae08b 100644 --- a/crates/util/keyfork-prompt/Cargo.toml +++ b/crates/util/keyfork-prompt/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "keyfork-prompt" -version = "0.1.1" +version = "0.1.2" description = "Prompt management utilities for Keyfork" repository = "https://git.distrust.co/public/keyfork" edition = "2021" diff --git a/scripts/make-changelog-blurb.sh b/scripts/make-changelog-blurb.sh index c466d6d..d57e804 100644 --- a/scripts/make-changelog-blurb.sh +++ b/scripts/make-changelog-blurb.sh @@ -3,12 +3,13 @@ set -o pipefail LAST_REF="$1" CURRENT_REF="${2:-HEAD}" +IGNORE="${3:-ABCDEFG}" cargo metadata --format-version=1 | \ jq -r '.packages[] | select(.source == null) | .name + " " + .manifest_path' | \ while read crate manifest_path; do crate_path="$(dirname $manifest_path)" - git_log="$(git log --format='%h %s' "$LAST_REF"..HEAD "$crate_path")" + git_log="$(git log --format='%h %s' "$LAST_REF".."$CURRENT_REF" "$crate_path" | { grep -v "$IGNORE" || true; })" if test ! -z "$git_log"; then echo "### Changes in $crate:" echo "" diff --git a/scripts/sign-new-versions.sh b/scripts/sign-new-versions.sh index 769aa07..d0030c2 100644 --- a/scripts/sign-new-versions.sh +++ b/scripts/sign-new-versions.sh @@ -10,7 +10,7 @@ cargo metadata --format-version=1 | jq -r '.packages[] | select(.source == null) while read crate manifest_path version <&3; do crate_path="$(dirname $manifest_path)" - git_log="$(git log --format='%h %s' "$LAST_REF"..HEAD "$crate_path")" + git_log="$(git log --format='%h %s' "$LAST_REF".."$CURRENT_REF" "$crate_path")" git_tag="$(git tag --list "$crate-v${version}")" if test ! -z "$git_log" -a -z "$git_tag"; then {