Cargo.toml 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. [package]
  2. name = "cdk"
  3. version.workspace = true
  4. edition.workspace = true
  5. authors = ["CDK Developers"]
  6. description = "Core Cashu Development Kit library implementing the Cashu protocol"
  7. homepage = "https://github.com/cashubtc/cdk"
  8. repository = "https://github.com/cashubtc/cdk.git"
  9. rust-version.workspace = true # MSRV
  10. license.workspace = true
  11. [features]
  12. default = ["mint", "wallet", "auth", "grpc"]
  13. wallet = ["dep:reqwest", "cdk-common/wallet"]
  14. mint = ["dep:futures", "dep:reqwest", "cdk-common/mint"]
  15. auth = ["dep:jsonwebtoken", "cdk-common/auth", "cdk-common/auth"]
  16. # We do not commit to a MSRV with swagger enabled
  17. swagger = ["mint", "dep:utoipa", "cdk-common/swagger"]
  18. bench = []
  19. grpc = ["cdk-signatory/grpc"]
  20. http_subscription = []
  21. [dependencies]
  22. cdk-signatory.workspace = true
  23. cdk-common.workspace = true
  24. cbor-diag.workspace = true
  25. async-trait.workspace = true
  26. anyhow.workspace = true
  27. bitcoin.workspace = true
  28. ciborium.workspace = true
  29. lightning-invoice.workspace = true
  30. regex.workspace = true
  31. reqwest = { workspace = true, optional = true }
  32. serde.workspace = true
  33. serde_json.workspace = true
  34. serde_with.workspace = true
  35. tracing.workspace = true
  36. thiserror.workspace = true
  37. futures = { workspace = true, optional = true, features = ["alloc"] }
  38. url.workspace = true
  39. utoipa = { workspace = true, optional = true }
  40. uuid.workspace = true
  41. jsonwebtoken = { workspace = true, optional = true }
  42. # -Z minimal-versions
  43. sync_wrapper = "0.1.2"
  44. bech32 = "0.9.1"
  45. [target.'cfg(not(target_arch = "wasm32"))'.dependencies]
  46. tokio = { workspace = true, features = [
  47. "rt-multi-thread",
  48. "time",
  49. "macros",
  50. "sync",
  51. ] }
  52. getrandom = { version = "0.2" }
  53. tokio-tungstenite = { workspace = true, features = [
  54. "rustls",
  55. "rustls-tls-native-roots",
  56. "connect"
  57. ] }
  58. [target.'cfg(target_arch = "wasm32")'.dependencies]
  59. tokio = { workspace = true, features = ["rt", "macros", "sync", "time"] }
  60. getrandom = { version = "0.2", features = ["js"] }
  61. [[example]]
  62. name = "mint-token"
  63. required-features = ["wallet"]
  64. [[example]]
  65. name = "melt-token"
  66. required-features = ["wallet"]
  67. [[example]]
  68. name = "p2pk"
  69. required-features = ["wallet"]
  70. [[example]]
  71. name = "wallet"
  72. required-features = ["wallet"]
  73. [[example]]
  74. name = "proof-selection"
  75. required-features = ["wallet"]
  76. [[example]]
  77. name = "auth_wallet"
  78. required-features = ["wallet", "auth"]
  79. [dev-dependencies]
  80. rand.workspace = true
  81. cdk-sqlite.workspace = true
  82. bip39.workspace = true
  83. tracing-subscriber.workspace = true
  84. criterion = "0.5.1"
  85. reqwest = { workspace = true }
  86. [[bench]]
  87. name = "dhke_benchmarks"
  88. harness = false