taler-rust

GNU Taler code in Rust. Largely core banking integrations.
Log | Files | Refs | Submodules | README | LICENSE

commit c75da6c72bce6dc7633611a8bd058d9d30774992
parent 0ff83d96b82649f06ee6c3a48090c4f9c646d088
Author: Antoine A <>
Date:   Mon,  9 Dec 2024 12:52:28 +0100

utils: reduce dependencies

Diffstat:
MCargo.lock | 63+++++++++++++++++++++++++++++----------------------------------
MCargo.toml | 7+++----
Mtaler-api/Cargo.toml | 1+
Mtaler-api/schema.sql | 5++---
Mtaler-common/Cargo.toml | 2+-
5 files changed, 36 insertions(+), 42 deletions(-)

diff --git a/Cargo.lock b/Cargo.lock @@ -269,9 +269,9 @@ checksum = "a3e368af43e418a04d52505cf3dbc23dda4e3407ae2fa99fd0e4f308ce546acc" [[package]] name = "cc" -version = "1.2.2" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f34d93e62b03caf570cccc334cbc6c2fceca82f39211051345108adcba3eebdc" +checksum = "27f657647bcff5394bf56c7317665bbf790a137a50eaaa5c6bfbb9e27a518f2d" dependencies = [ "shlex", ] @@ -284,9 +284,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.38" +version = "0.4.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" +checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825" dependencies = [ "android-tzdata", "iana-time-zone", @@ -529,9 +529,9 @@ dependencies = [ [[package]] name = "fastrand" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "486f806e73c5707928240ddc295403b1b93c96a02038563881c4a2fd84b81ac4" +checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" [[package]] name = "flume" @@ -1022,9 +1022,9 @@ checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" [[package]] name = "js-sys" -version = "0.3.74" +version = "0.3.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a865e038f7f6ed956f788f0d7d60c541fff74c7bd74272c5d4cf15c63743e705" +checksum = "6717b6b5b077764fb5966237269cb3c64edddde4b14ce42647430a78ced9e7b7" dependencies = [ "once_cell", "wasm-bindgen", @@ -1041,9 +1041,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.167" +version = "0.2.168" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09d6582e104315a817dff97f75133544b2e094ee22447d2acf4a74e189ba06fc" +checksum = "5aaeb2981e0606ca11d79718f8bb01164f1d6ed75080182d3abf017e6d244b6d" [[package]] name = "libdeflate-sys" @@ -1570,15 +1570,15 @@ checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" [[package]] name = "rustix" -version = "0.38.41" +version = "0.38.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7f649912bc1495e167a6edee79151c84b1bad49748cb4f1f1167f459f6224f6" +checksum = "f93dc38ecbab2eb790ff964bb77fa94faf256fd3e73285fd7ba0903b76bedb85" dependencies = [ "bitflags", "errno", "libc", "linux-raw-sys", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -1921,9 +1921,7 @@ dependencies = [ "serde_json", "sha2", "sqlx-core", - "sqlx-mysql", "sqlx-postgres", - "sqlx-sqlite", "syn", "tempfile", "tokio", @@ -1961,7 +1959,6 @@ dependencies = [ "percent-encoding", "rand", "rsa", - "serde", "sha1", "sha2", "smallvec", @@ -2026,7 +2023,6 @@ dependencies = [ "libsqlite3-sys", "log", "percent-encoding", - "serde", "serde_urlencoded", "sqlx-core", "tracing", @@ -2128,7 +2124,7 @@ dependencies = [ "serde_json", "serde_with", "sqlx", - "thiserror 2.0.4", + "thiserror 2.0.6", "url", ] @@ -2168,11 +2164,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.4" +version = "2.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f49a1853cf82743e3b7950f77e0f4d622ca36cf4317cba00c767838bac8d490" +checksum = "8fec2a1820ebd077e2b90c4df007bebf344cd394098a13c563957d0afc83ea47" dependencies = [ - "thiserror-impl 2.0.4", + "thiserror-impl 2.0.6", ] [[package]] @@ -2188,9 +2184,9 @@ dependencies = [ [[package]] name = "thiserror-impl" -version = "2.0.4" +version = "2.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8381894bb3efe0c4acac3ded651301ceee58a15d47c2e34885ed1908ad667061" +checksum = "d65750cab40f4ff1929fb1ba509e9914eb756131cef4210da8d5d700d26f6312" dependencies = [ "proc-macro2", "quote", @@ -2541,9 +2537,9 @@ checksum = "b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b" [[package]] name = "wasm-bindgen" -version = "0.2.97" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d15e63b4482863c109d70a7b8706c1e364eb6ea449b201a76c5b89cedcec2d5c" +checksum = "a474f6281d1d70c17ae7aa6a613c87fce69a127e2624002df63dcb39d6cf6396" dependencies = [ "cfg-if", "once_cell", @@ -2552,13 +2548,12 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.97" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d36ef12e3aaca16ddd3f67922bc63e48e953f126de60bd33ccc0101ef9998cd" +checksum = "5f89bb38646b4f81674e8f5c3fb81b562be1fd936d84320f3264486418519c79" dependencies = [ "bumpalo", "log", - "once_cell", "proc-macro2", "quote", "syn", @@ -2567,9 +2562,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.97" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "705440e08b42d3e4b36de7d66c944be628d579796b8090bfa3471478a2260051" +checksum = "2cc6181fd9a7492eef6fef1f33961e3695e4579b9872a6f7c83aee556666d4fe" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -2577,9 +2572,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.97" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98c9ae5a76e46f4deecd0f0255cc223cfa18dc9b261213b8aa0c7b36f61b3f1d" +checksum = "30d7a95b763d3c45903ed6c81f156801839e5ee968bb07e534c44df0fcd330c2" dependencies = [ "proc-macro2", "quote", @@ -2590,9 +2585,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.97" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ee99da9c5ba11bd675621338ef6fa52296b76b83305e9b6e5c77d4c286d6d49" +checksum = "943aab3fdaaa029a6e0271b35ea10b72b943135afe9bffca82384098ad0e06a6" [[package]] name = "webpki-roots" diff --git a/Cargo.toml b/Cargo.toml @@ -9,7 +9,7 @@ debug = true thiserror = "2.0.4" serde_json = "1.0" serde = "1.0" -tokio = { version = "1.42", features = ["macros"]} +tokio = { version = "1.42", features = ["macros"] } axum = "0.7.9" -sqlx = "0.8" -url = { version = "2.2", features = ["serde"] } -\ No newline at end of file +sqlx = { version = "0.8", default-features = false } +url = { version = "2.2", features = ["serde"] } diff --git a/taler-api/Cargo.toml b/taler-api/Cargo.toml @@ -13,6 +13,7 @@ sqlx = { workspace = true, features = [ "postgres", "runtime-tokio-rustls", "tls-rustls-ring", + "migrate", ] } http-body-util = "0.1.2" libdeflater = "1.22.0" diff --git a/taler-api/schema.sql b/taler-api/schema.sql @@ -65,7 +65,7 @@ CREATE FUNCTION taler_transfer( LANGUAGE plpgsql AS $$ BEGIN -- Check for idempotence and conflict -SELECT (amount != in_amount +SELECT (amount != in_amount OR credit_payto != in_credit_payto OR exchange_base_url != in_exchange_base_url OR wtid != in_wtid) @@ -172,4 +172,4 @@ PERFORM pg_notify('incoming_tx', out_tx_row_id || ''); END $$; COMMENT ON FUNCTION add_incoming IS 'Create an incoming taler transaction and register it'; -COMMIT; -\ No newline at end of file +COMMIT; diff --git a/taler-common/Cargo.toml b/taler-common/Cargo.toml @@ -12,4 +12,4 @@ serde = { workspace = true, features = ["derive"] } serde_json = { workspace = true, features = ["raw_value"] } url.workspace = true thiserror.workspace = true -sqlx.workspace = true +sqlx = { workspace = true, features = ["macros"] }