Cargo.toml 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. [package]
  2. name = "cashu"
  3. version.workspace = true
  4. edition.workspace = true
  5. authors = ["CDK Developers"]
  6. description = "Cashu shared types and crypto utilities, used as the foundation for the CDK and their crates"
  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. readme = "README.md"
  12. [features]
  13. default = ["mint", "wallet", "auth"]
  14. swagger = ["dep:utoipa"]
  15. mint = []
  16. wallet = []
  17. auth = ["dep:strum", "dep:strum_macros", "dep:regex"]
  18. nostr = ["dep:nostr-sdk"]
  19. bench = []
  20. [dependencies]
  21. uuid.workspace = true
  22. bitcoin.workspace = true
  23. cbor-diag.workspace = true
  24. ciborium.workspace = true
  25. once_cell.workspace = true
  26. serde.workspace = true
  27. lightning-invoice.workspace = true
  28. lightning.workspace = true
  29. thiserror.workspace = true
  30. tracing.workspace = true
  31. url.workspace = true
  32. utoipa = { workspace = true, optional = true }
  33. serde_json.workspace = true
  34. serde_with.workspace = true
  35. regex = { workspace = true, optional = true }
  36. strum = { workspace = true, optional = true }
  37. strum_macros = { workspace = true, optional = true }
  38. nostr-sdk = { workspace = true, optional = true }
  39. zeroize = "1"
  40. web-time.workspace = true
  41. [target.'cfg(target_arch = "wasm32")'.dependencies]
  42. uuid = { workspace = true, features = ["js"], optional = true }
  43. [dev-dependencies]
  44. bip39.workspace = true
  45. nostr-sdk.workspace = true
  46. [lints.rust]
  47. unsafe_code = "forbid"
  48. unreachable_pub = "warn"
  49. missing_debug_implementations = "warn"
  50. missing_docs = "warn"
  51. [lints.clippy]
  52. # pedantic = { level = "warn", priority = -1 }
  53. # nursery = { level = "warn", priority = -1 }
  54. unwrap_used = "deny"
  55. clone_on_ref_ptr = "warn"
  56. # missing_errors_doc = "warn"
  57. missing_panics_doc = "warn"
  58. missing_safety_doc = "warn"
  59. large_enum_variant = "warn"
  60. redundant_else = "warn"
  61. redundant_closure_for_method_calls = "warn"
  62. unneeded_field_pattern = "warn"
  63. use_debug = "warn"
  64. [lints.rustdoc]
  65. bare_urls = "warn"