Prepare v0.8.0 (#672)

* chore: Bump cdk dependency to v0.8.0

* chore: add docker publish to ci

* chore: add doc test build to ci
This commit is contained in:
thesimplekid
2025-03-24 18:40:08 +00:00
committed by GitHub
parent b3ae76d6c7
commit c63fc02a5a
20 changed files with 160 additions and 81 deletions

View File

@@ -5,6 +5,8 @@ on:
branches: [main] branches: [main]
pull_request: pull_request:
branches: [main] branches: [main]
release:
types: [created]
env: env:
CARGO_TERM_COLOR: always CARGO_TERM_COLOR: always
@@ -388,4 +390,20 @@ jobs:
- name: Stop and clean up Docker Compose - name: Stop and clean up Docker Compose
run: | run: |
docker compose -f misc/keycloak/docker-compose-recover.yml down docker compose -f misc/keycloak/docker-compose-recover.yml down
doc-tests:
name: "Documentation Tests"
runs-on: ubuntu-latest
timeout-minutes: 15
needs: pre-commit-checks
steps:
- name: checkout
uses: actions/checkout@v4
- name: Install Nix
uses: DeterminateSystems/nix-installer-action@v11
- name: Nix Cache
uses: DeterminateSystems/magic-nix-cache-action@v6
- name: Rust Cache
uses: Swatinem/rust-cache@v2
- name: Run doc tests
run: nix develop -i -L .#stable --command cargo test --doc

60
.github/workflows/docker-publish.yml vendored Normal file
View File

@@ -0,0 +1,60 @@
name: Publish Docker Image
on:
release:
types: [published]
workflow_dispatch:
inputs:
tag:
description: 'Tag to build and publish'
required: true
default: 'latest'
env:
REGISTRY: docker.io
IMAGE_NAME: thesimplekid/cdk-mintd
jobs:
build-and-push:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
tags: |
type=raw,value=latest,enable=${{ github.event_name == 'release' }}
type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}}
type=ref,event=branch
type=ref,event=pr
type=sha
${{ github.event.inputs.tag != '' && github.event.inputs.tag || '' }}
- name: Build and push Docker image
uses: docker/build-push-action@v5
with:
context: .
push: true
platforms: linux/amd64,linux/arm64
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
cache-from: type=gha
cache-to: type=gha,mode=max

View File

@@ -10,6 +10,7 @@ rust-version = "1.75.0"
license = "MIT" license = "MIT"
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
version = "0.8.0"
[workspace.dependencies] [workspace.dependencies]
anyhow = "1" anyhow = "1"
@@ -18,18 +19,18 @@ axum = { version = "0.8.1", features = ["ws"] }
bitcoin = { version = "0.32.2", features = ["base64", "serde", "rand", "rand-std"] } bitcoin = { version = "0.32.2", features = ["base64", "serde", "rand", "rand-std"] }
bip39 = { version = "2.0", features = ["rand"] } bip39 = { version = "2.0", features = ["rand"] }
jsonwebtoken = "9.2.0" jsonwebtoken = "9.2.0"
cashu = { path = "./crates/cashu", version = "=0.7.1" } cashu = { path = "./crates/cashu", version = "=0.8.0" }
cdk = { path = "./crates/cdk", default-features = false, version = "=0.7.2" } cdk = { path = "./crates/cdk", default-features = false, version = "=0.8.0" }
cdk-common = { path = "./crates/cdk-common", default-features = false, version = "=0.7.1" } cdk-common = { path = "./crates/cdk-common", default-features = false, version = "=0.8.0" }
cdk-axum = { path = "./crates/cdk-axum", default-features = false, version = "=0.7.1" } cdk-axum = { path = "./crates/cdk-axum", default-features = false, version = "=0.8.0" }
cdk-cln = { path = "./crates/cdk-cln", version = "=0.7.1" } cdk-cln = { path = "./crates/cdk-cln", version = "=0.8.0" }
cdk-lnbits = { path = "./crates/cdk-lnbits", version = "=0.7.1" } cdk-lnbits = { path = "./crates/cdk-lnbits", version = "=0.8.0" }
cdk-lnd = { path = "./crates/cdk-lnd", version = "=0.7.1" } cdk-lnd = { path = "./crates/cdk-lnd", version = "=0.8.0" }
cdk-fake-wallet = { path = "./crates/cdk-fake-wallet", version = "=0.7.1" } cdk-fake-wallet = { path = "./crates/cdk-fake-wallet", version = "=0.8.0" }
cdk-payment-processor = { path = "./crates/cdk-payment-processor", default-features = true, version = "=0.7.1" } cdk-payment-processor = { path = "./crates/cdk-payment-processor", default-features = true, version = "=0.8.0" }
cdk-mint-rpc = { path = "./crates/cdk-mint-rpc", version = "=0.7.1" } cdk-mint-rpc = { path = "./crates/cdk-mint-rpc", version = "=0.8.0" }
cdk-redb = { path = "./crates/cdk-redb", default-features = true, version = "=0.7.1" } cdk-redb = { path = "./crates/cdk-redb", default-features = true, version = "=0.8.0" }
cdk-sqlite = { path = "./crates/cdk-sqlite", default-features = true, version = "=0.7.1" } cdk-sqlite = { path = "./crates/cdk-sqlite", default-features = true, version = "=0.8.0" }
clap = { version = "4.5.31", features = ["derive"] } clap = { version = "4.5.31", features = ["derive"] }
ciborium = { version = "0.2.2", default-features = false, features = ["std"] } ciborium = { version = "0.2.2", default-features = false, features = ["std"] }
cbor-diag = "0.1.12" cbor-diag = "0.1.12"

View File

@@ -1,12 +1,12 @@
[package] [package]
name = "cashu" name = "cashu"
version = "0.7.1" version.workspace = true
edition.workspace = true edition.workspace = true
authors = ["CDK Developers"] authors = ["CDK Developers"]
description = "Cashu shared types and crypto utilities, used as the foundation for the CDK and their crates" description = "Cashu shared types and crypto utilities, used as the foundation for the CDK and their crates"
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
rust-version = "1.75.0" # MSRV rust-version.workspace = true # MSRV
license.workspace = true license.workspace = true
[features] [features]

View File

@@ -1,11 +1,11 @@
[package] [package]
name = "cdk-axum" name = "cdk-axum"
version = "0.7.1" version.workspace = true
edition.workspace = true edition.workspace = true
license.workspace = true license.workspace = true
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
rust-version = "1.75.0" # MSRV rust-version.workspace = true # MSRV
description = "Cashu CDK axum webserver" description = "Cashu CDK axum webserver"

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "cdk-cli" name = "cdk-cli"
version = "0.7.1" version.workspace = true
authors = ["CDK Developers"] authors = ["CDK Developers"]
description = "Cashu cli wallet built on CDK" description = "Cashu cli wallet built on CDK"
license.workspace = true license.workspace = true

View File

@@ -1,12 +1,12 @@
[package] [package]
name = "cdk-cln" name = "cdk-cln"
version = "0.7.1" version.workspace = true
edition = "2021" edition.workspace = true
authors = ["CDK Developers"] authors = ["CDK Developers"]
license = "MIT" license.workspace = true
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
rust-version = "1.75.0" # MSRV rust-version.workspace = true # MSRV
description = "CDK ln backend for cln" description = "CDK ln backend for cln"
[dependencies] [dependencies]

View File

@@ -1,12 +1,12 @@
[package] [package]
name = "cdk-common" name = "cdk-common"
version = "0.7.1" version.workspace = true
authors = ["CDK Developers"] authors = ["CDK Developers"]
description = "CDK common types and traits" description = "CDK common types and traits"
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
edition.workspace = true edition.workspace = true
rust-version = "1.75.0" # MSRV rust-version.workspace = true # MSRV
license.workspace = true license.workspace = true
[features] [features]

View File

@@ -1,12 +1,12 @@
[package] [package]
name = "cdk-fake-wallet" name = "cdk-fake-wallet"
version = "0.7.1" version.workspace = true
edition = "2021" edition.workspace = true
authors = ["CDK Developers"] authors = ["CDK Developers"]
license = "MIT" license.workspace = true
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
rust-version = "1.75.0" # MSRV rust-version.workspace = true # MSRV
description = "CDK fake ln backend" description = "CDK fake ln backend"
[dependencies] [dependencies]

View File

@@ -1,13 +1,13 @@
[package] [package]
name = "cdk-integration-tests" name = "cdk-integration-tests"
version = "0.7.0" version.workspace = true
edition = "2021" edition.workspace = true
authors = ["CDK Developers"] authors = ["CDK Developers"]
description = "Core Cashu Development Kit library implementing the Cashu protocol" description = "Core Cashu Development Kit library implementing the Cashu protocol"
license = "MIT" license.workspace = true
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
rust-version = "1.75.0" # MSRV rust-version.workspace = true # MSRV
[features] [features]
@@ -19,14 +19,14 @@ axum.workspace = true
rand.workspace = true rand.workspace = true
bip39 = { workspace = true, features = ["rand"] } bip39 = { workspace = true, features = ["rand"] }
anyhow.workspace = true anyhow.workspace = true
cashu = { path = "../cashu", features = ["mint", "wallet"] } cashu = { workspace = true, features = ["mint", "wallet"] }
cdk = { path = "../cdk", features = ["mint", "wallet", "auth"] } cdk = { workspace = true, features = ["mint", "wallet", "auth"] }
cdk-cln = { path = "../cdk-cln" } cdk-cln = { workspace = true }
cdk-lnd = { path = "../cdk-lnd" } cdk-lnd = { workspace = true }
cdk-axum = { path = "../cdk-axum" } cdk-axum = { workspace = true }
cdk-sqlite = { path = "../cdk-sqlite" } cdk-sqlite = { workspace = true }
cdk-redb = { path = "../cdk-redb" } cdk-redb = { workspace = true }
cdk-fake-wallet = { path = "../cdk-fake-wallet" } cdk-fake-wallet = { workspace = true }
futures = { workspace = true, default-features = false, features = [ futures = { workspace = true, default-features = false, features = [
"executor", "executor",
] } ] }
@@ -55,7 +55,7 @@ instant = { workspace = true, features = ["wasm-bindgen", "inaccurate"] }
[dev-dependencies] [dev-dependencies]
bip39 = { workspace = true, features = ["rand"] } bip39 = { workspace = true, features = ["rand"] }
anyhow.workspace = true anyhow.workspace = true
cdk = { path = "../cdk", features = ["mint", "wallet"] } cdk = { workspace = true, features = ["mint", "wallet"] }
cdk-axum = { path = "../cdk-axum" } cdk-axum = { workspace = true }
cdk-fake-wallet = { path = "../cdk-fake-wallet" } cdk-fake-wallet = { workspace = true }
tower-http = { workspace = true, features = ["cors"] } tower-http = { workspace = true, features = ["cors"] }

View File

@@ -1,12 +1,12 @@
[package] [package]
name = "cdk-lnbits" name = "cdk-lnbits"
version = "0.7.1" version.workspace = true
edition = "2021" edition.workspace = true
authors = ["CDK Developers"] authors = ["CDK Developers"]
license = "MIT" license.workspace = true
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
rust-version = "1.75.0" # MSRV rust-version.workspace = true # MSRV
description = "CDK ln backend for lnbits" description = "CDK ln backend for lnbits"
[dependencies] [dependencies]

View File

@@ -1,11 +1,12 @@
[package] [package]
name = "cdk-lnd" name = "cdk-lnd"
version = "0.7.1" version.workspace = true
edition = "2021" edition.workspace = true
authors = ["CDK Developers"] authors = ["CDK Developers"]
license = "MIT" license.workspace = true
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
rust-version.workspace = true # MSRV
description = "CDK ln backend for lnd" description = "CDK ln backend for lnd"
[dependencies] [dependencies]

View File

@@ -1,13 +1,13 @@
[package] [package]
name = "cdk-mint-rpc" name = "cdk-mint-rpc"
version = "0.7.1" version.workspace = true
edition = "2021" edition.workspace = true
authors = ["CDK Developers"] authors = ["CDK Developers"]
description = "CDK mintd mint managment RPC client and server" description = "CDK mintd mint managment RPC client and server"
license = "MIT" license.workspace = true
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
rust-version = "1.75.0" # MSRV rust-version.workspace = true # MSRV
[[bin]] [[bin]]
name = "cdk-mint-cli" name = "cdk-mint-cli"

View File

@@ -1,13 +1,13 @@
[package] [package]
name = "cdk-mintd" name = "cdk-mintd"
version = "0.7.2" version.workspace = true
edition = "2021" edition.workspace = true
authors = ["CDK Developers"] authors = ["CDK Developers"]
license = "MIT" license.workspace = true
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
description = "CDK mint binary" description = "CDK mint binary"
rust-version = "1.75.0" rust-version.workspace = true
[features] [features]
default = ["management-rpc", "cln", "lnd", "lnbits", "fakewallet", "grpc-processor", "auth"] default = ["management-rpc", "cln", "lnd", "lnbits", "fakewallet", "grpc-processor", "auth"]

View File

@@ -1,13 +1,13 @@
[package] [package]
name = "cdk-payment-processor" name = "cdk-payment-processor"
version = "0.7.1" version.workspace = true
edition = "2021" edition.workspace = true
authors = ["CDK Developers"] authors = ["CDK Developers"]
description = "CDK payment processor" description = "CDK payment processor"
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
rust-version = "1.75.0" # MSRV rust-version.workspace = true # MSRV
license = "MIT" license.workspace = true
[[bin]] [[bin]]
name = "cdk-payment-processor" name = "cdk-payment-processor"

View File

@@ -1,13 +1,13 @@
[package] [package]
name = "cdk-redb" name = "cdk-redb"
version = "0.7.1" version.workspace = true
edition = "2021" edition.workspace = true
authors = ["CDK Developers"] authors = ["CDK Developers"]
description = "Redb storage backend for CDK" description = "Redb storage backend for CDK"
license = "MIT" license.workspace = true
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
rust-version = "1.81.0" # MSRV rust-version.workspace = true # MSRV
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[features] [features]

View File

@@ -1,13 +1,13 @@
[package] [package]
name = "cdk-rexie" name = "cdk-rexie"
version = "0.7.1" version.workspace = true
edition = "2021" edition.workspace = true
authors = ["CDK Developers"] authors = ["CDK Developers"]
description = "Indexdb storage backend for CDK in the browser" description = "Indexdb storage backend for CDK in the browser"
license = "MIT" license.workspace = true
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
rust-version = "1.75.0" # MSRV rust-version.workspace = true # MSRV
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[features] [features]

View File

@@ -1,13 +1,13 @@
[package] [package]
name = "cdk-sqlite" name = "cdk-sqlite"
version = "0.7.1" version.workspace = true
edition = "2021" edition.workspace = true
authors = ["CDK Developers"] authors = ["CDK Developers"]
description = "SQLite storage backend for CDK" description = "SQLite storage backend for CDK"
license = "MIT" license.workspace = true
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
rust-version = "1.75.0" # MSRV rust-version.workspace = true # MSRV
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[features] [features]

View File

@@ -1,13 +1,13 @@
[package] [package]
name = "cdk" name = "cdk"
version = "0.7.2" version.workspace = true
edition = "2021" edition.workspace = true
authors = ["CDK Developers"] authors = ["CDK Developers"]
description = "Core Cashu Development Kit library implementing the Cashu protocol" description = "Core Cashu Development Kit library implementing the Cashu protocol"
homepage = "https://github.com/cashubtc/cdk" homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git" repository = "https://github.com/cashubtc/cdk.git"
rust-version = "1.75.0" # MSRV rust-version.workspace = true # MSRV
license = "MIT" license.workspace = true
[features] [features]
@@ -40,7 +40,7 @@ futures = { workspace = true, optional = true, features = ["alloc"] }
url.workspace = true url.workspace = true
utoipa = { workspace = true, optional = true } utoipa = { workspace = true, optional = true }
uuid.workspace = true uuid.workspace = true
jsonwebtoken = { version = "9", optional = true } jsonwebtoken = { workspace = true, optional = true }
# -Z minimal-versions # -Z minimal-versions
sync_wrapper = "0.1.2" sync_wrapper = "0.1.2"

View File

@@ -132,10 +132,9 @@ release m="":
"-p cdk-mint-rpc" "-p cdk-mint-rpc"
"-p cdk-cln" "-p cdk-cln"
"-p cdk-lnd" "-p cdk-lnd"
"-p cdk-strike"
"-p cdk-phoenixd"
"-p cdk-lnbits" "-p cdk-lnbits"
"-p cdk-fake-wallet" "-p cdk-fake-wallet"
"-p cdk-payment-processor"
"-p cdk-cli" "-p cdk-cli"
"-p cdk-mintd" "-p cdk-mintd"
) )