mirror of
https://github.com/juspay/hyperswitch.git
synced 2025-10-30 17:47:54 +08:00
build(deps): remove unused dependencies and features (#2854)
This commit is contained in:
62
Cargo.lock
generated
62
Cargo.lock
generated
@ -2,30 +2,6 @@
|
|||||||
# It is not intended for manual editing.
|
# It is not intended for manual editing.
|
||||||
version = 3
|
version = 3
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "actix"
|
|
||||||
version = "0.13.0"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "f728064aca1c318585bf4bb04ffcfac9e75e508ab4e8b1bd9ba5dfe04e2cbed5"
|
|
||||||
dependencies = [
|
|
||||||
"actix-rt",
|
|
||||||
"actix_derive",
|
|
||||||
"bitflags 1.3.2",
|
|
||||||
"bytes",
|
|
||||||
"crossbeam-channel",
|
|
||||||
"futures-core",
|
|
||||||
"futures-sink",
|
|
||||||
"futures-task",
|
|
||||||
"futures-util",
|
|
||||||
"log",
|
|
||||||
"once_cell",
|
|
||||||
"parking_lot 0.12.1",
|
|
||||||
"pin-project-lite",
|
|
||||||
"smallvec",
|
|
||||||
"tokio",
|
|
||||||
"tokio-util",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "actix-codec"
|
name = "actix-codec"
|
||||||
version = "0.5.1"
|
version = "0.5.1"
|
||||||
@ -282,17 +258,6 @@ dependencies = [
|
|||||||
"syn 2.0.38",
|
"syn 2.0.38",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "actix_derive"
|
|
||||||
version = "0.6.0"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "6d44b8fee1ced9671ba043476deddef739dd0959bf77030b26b738cc591737a7"
|
|
||||||
dependencies = [
|
|
||||||
"proc-macro2",
|
|
||||||
"quote",
|
|
||||||
"syn 1.0.109",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "addr2line"
|
name = "addr2line"
|
||||||
version = "0.21.0"
|
version = "0.21.0"
|
||||||
@ -418,7 +383,6 @@ dependencies = [
|
|||||||
"serde_json",
|
"serde_json",
|
||||||
"serde_with",
|
"serde_with",
|
||||||
"strum 0.24.1",
|
"strum 0.24.1",
|
||||||
"thiserror",
|
|
||||||
"time",
|
"time",
|
||||||
"url",
|
"url",
|
||||||
"utoipa",
|
"utoipa",
|
||||||
@ -1561,7 +1525,6 @@ dependencies = [
|
|||||||
"serde",
|
"serde",
|
||||||
"serde_json",
|
"serde_json",
|
||||||
"strum 0.25.0",
|
"strum 0.25.0",
|
||||||
"time",
|
|
||||||
"utoipa",
|
"utoipa",
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -1924,7 +1887,6 @@ dependencies = [
|
|||||||
"masking",
|
"masking",
|
||||||
"serde",
|
"serde",
|
||||||
"serde_json",
|
"serde_json",
|
||||||
"strum 0.25.0",
|
|
||||||
"thiserror",
|
"thiserror",
|
||||||
"time",
|
"time",
|
||||||
]
|
]
|
||||||
@ -2035,13 +1997,10 @@ name = "diesel_models"
|
|||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"async-bb8-diesel",
|
"async-bb8-diesel",
|
||||||
"aws-config",
|
|
||||||
"aws-sdk-s3",
|
|
||||||
"common_enums",
|
"common_enums",
|
||||||
"common_utils",
|
"common_utils",
|
||||||
"diesel",
|
"diesel",
|
||||||
"error-stack",
|
"error-stack",
|
||||||
"external_services",
|
|
||||||
"frunk",
|
"frunk",
|
||||||
"frunk_core",
|
"frunk_core",
|
||||||
"masking",
|
"masking",
|
||||||
@ -3271,12 +3230,6 @@ version = "0.4.8"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "3852614a3bd9ca9804678ba6be5e3b8ce76dfc902cae004e3e0c44051b6e88db"
|
checksum = "3852614a3bd9ca9804678ba6be5e3b8ce76dfc902cae004e3e0c44051b6e88db"
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "literally"
|
|
||||||
version = "0.1.3"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "f0d2be3f5a0d4d5c983d1f8ecc2a87676a0875a14feb9eebf0675f7c3e2f3c35"
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "local-channel"
|
name = "local-channel"
|
||||||
version = "0.1.4"
|
version = "0.1.4"
|
||||||
@ -4593,7 +4546,6 @@ dependencies = [
|
|||||||
name = "router"
|
name = "router"
|
||||||
version = "0.2.0"
|
version = "0.2.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"actix",
|
|
||||||
"actix-cors",
|
"actix-cors",
|
||||||
"actix-http",
|
"actix-http",
|
||||||
"actix-multipart",
|
"actix-multipart",
|
||||||
@ -4635,7 +4587,6 @@ dependencies = [
|
|||||||
"josekit",
|
"josekit",
|
||||||
"jsonwebtoken",
|
"jsonwebtoken",
|
||||||
"kgraph_utils",
|
"kgraph_utils",
|
||||||
"literally",
|
|
||||||
"masking",
|
"masking",
|
||||||
"maud",
|
"maud",
|
||||||
"mimalloc",
|
"mimalloc",
|
||||||
@ -4664,18 +4615,14 @@ dependencies = [
|
|||||||
"serde_with",
|
"serde_with",
|
||||||
"serial_test",
|
"serial_test",
|
||||||
"sha-1 0.9.8",
|
"sha-1 0.9.8",
|
||||||
"signal-hook",
|
|
||||||
"signal-hook-tokio",
|
|
||||||
"sqlx",
|
"sqlx",
|
||||||
"storage_impl",
|
"storage_impl",
|
||||||
"strum 0.24.1",
|
"strum 0.24.1",
|
||||||
"tera",
|
"tera",
|
||||||
"test_utils",
|
"test_utils",
|
||||||
"thirtyfour",
|
|
||||||
"thiserror",
|
"thiserror",
|
||||||
"time",
|
"time",
|
||||||
"tokio",
|
"tokio",
|
||||||
"toml 0.7.4",
|
|
||||||
"unicode-segmentation",
|
"unicode-segmentation",
|
||||||
"url",
|
"url",
|
||||||
"utoipa",
|
"utoipa",
|
||||||
@ -4962,7 +4909,6 @@ dependencies = [
|
|||||||
"router_env",
|
"router_env",
|
||||||
"serde",
|
"serde",
|
||||||
"serde_json",
|
"serde_json",
|
||||||
"signal-hook-tokio",
|
|
||||||
"storage_impl",
|
"storage_impl",
|
||||||
"strum 0.24.1",
|
"strum 0.24.1",
|
||||||
"thiserror",
|
"thiserror",
|
||||||
@ -5496,7 +5442,6 @@ dependencies = [
|
|||||||
"diesel_models",
|
"diesel_models",
|
||||||
"dyn-clone",
|
"dyn-clone",
|
||||||
"error-stack",
|
"error-stack",
|
||||||
"external_services",
|
|
||||||
"futures",
|
"futures",
|
||||||
"http",
|
"http",
|
||||||
"masking",
|
"masking",
|
||||||
@ -5730,27 +5675,20 @@ dependencies = [
|
|||||||
name = "test_utils"
|
name = "test_utils"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"actix-http",
|
|
||||||
"actix-web",
|
|
||||||
"api_models",
|
|
||||||
"async-trait",
|
"async-trait",
|
||||||
"awc",
|
|
||||||
"base64 0.21.4",
|
"base64 0.21.4",
|
||||||
"clap",
|
"clap",
|
||||||
"derive_deref",
|
|
||||||
"masking",
|
"masking",
|
||||||
"rand 0.8.5",
|
"rand 0.8.5",
|
||||||
"reqwest",
|
"reqwest",
|
||||||
"serde",
|
"serde",
|
||||||
"serde_json",
|
"serde_json",
|
||||||
"serde_path_to_error",
|
|
||||||
"serde_urlencoded",
|
"serde_urlencoded",
|
||||||
"serial_test",
|
"serial_test",
|
||||||
"thirtyfour",
|
"thirtyfour",
|
||||||
"time",
|
"time",
|
||||||
"tokio",
|
"tokio",
|
||||||
"toml 0.7.4",
|
"toml 0.7.4",
|
||||||
"uuid",
|
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
|||||||
@ -14,7 +14,7 @@ connector_choice_bcompat = []
|
|||||||
errors = ["dep:actix-web", "dep:reqwest"]
|
errors = ["dep:actix-web", "dep:reqwest"]
|
||||||
backwards_compatibility = ["connector_choice_bcompat"]
|
backwards_compatibility = ["connector_choice_bcompat"]
|
||||||
connector_choice_mca_id = ["euclid/connector_choice_mca_id"]
|
connector_choice_mca_id = ["euclid/connector_choice_mca_id"]
|
||||||
dummy_connector = ["common_enums/dummy_connector", "euclid/dummy_connector"]
|
dummy_connector = ["euclid/dummy_connector"]
|
||||||
detailed_errors = []
|
detailed_errors = []
|
||||||
payouts = []
|
payouts = []
|
||||||
|
|
||||||
@ -30,7 +30,6 @@ strum = { version = "0.24.1", features = ["derive"] }
|
|||||||
time = { version = "0.3.21", features = ["serde", "serde-well-known", "std"] }
|
time = { version = "0.3.21", features = ["serde", "serde-well-known", "std"] }
|
||||||
url = { version = "2.4.0", features = ["serde"] }
|
url = { version = "2.4.0", features = ["serde"] }
|
||||||
utoipa = { version = "3.3.0", features = ["preserve_order"] }
|
utoipa = { version = "3.3.0", features = ["preserve_order"] }
|
||||||
thiserror = "1.0.40"
|
|
||||||
|
|
||||||
# First party crates
|
# First party crates
|
||||||
cards = { version = "0.1.0", path = "../cards" }
|
cards = { version = "0.1.0", path = "../cards" }
|
||||||
|
|||||||
@ -7,15 +7,11 @@ rust-version.workspace = true
|
|||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
license.workspace = true
|
license.workspace = true
|
||||||
|
|
||||||
[features]
|
|
||||||
dummy_connector = []
|
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
diesel = { version = "2.1.0", features = ["postgres"] }
|
diesel = { version = "2.1.0", features = ["postgres"] }
|
||||||
serde = { version = "1.0.160", features = ["derive"] }
|
serde = { version = "1.0.160", features = ["derive"] }
|
||||||
serde_json = "1.0.96"
|
serde_json = "1.0.96"
|
||||||
strum = { version = "0.25", features = ["derive"] }
|
strum = { version = "0.25", features = ["derive"] }
|
||||||
time = { version = "0.3.21", features = ["serde", "serde-well-known", "std"] }
|
|
||||||
utoipa = { version = "3.3.0", features = ["preserve_order"] }
|
utoipa = { version = "3.3.0", features = ["preserve_order"] }
|
||||||
|
|
||||||
# First party crates
|
# First party crates
|
||||||
|
|||||||
@ -23,6 +23,7 @@ http = "0.2.9"
|
|||||||
md5 = "0.7.0"
|
md5 = "0.7.0"
|
||||||
nanoid = "0.4.0"
|
nanoid = "0.4.0"
|
||||||
once_cell = "1.18.0"
|
once_cell = "1.18.0"
|
||||||
|
phonenumber = "0.3.3"
|
||||||
quick-xml = { version = "0.28.2", features = ["serialize"] }
|
quick-xml = { version = "0.28.2", features = ["serialize"] }
|
||||||
rand = "0.8.5"
|
rand = "0.8.5"
|
||||||
regex = "1.8.4"
|
regex = "1.8.4"
|
||||||
@ -37,12 +38,11 @@ strum = { version = "0.24.1", features = ["derive"] }
|
|||||||
thiserror = "1.0.40"
|
thiserror = "1.0.40"
|
||||||
time = { version = "0.3.21", features = ["serde", "serde-well-known", "std"] }
|
time = { version = "0.3.21", features = ["serde", "serde-well-known", "std"] }
|
||||||
tokio = { version = "1.28.2", features = ["macros", "rt-multi-thread"], optional = true }
|
tokio = { version = "1.28.2", features = ["macros", "rt-multi-thread"], optional = true }
|
||||||
phonenumber = "0.3.3"
|
|
||||||
|
|
||||||
# First party crates
|
# First party crates
|
||||||
|
common_enums = { version = "0.1.0", path = "../common_enums" }
|
||||||
masking = { version = "0.1.0", path = "../masking" }
|
masking = { version = "0.1.0", path = "../masking" }
|
||||||
router_env = { version = "0.1.0", path = "../router_env", features = ["log_extra_implicit_fields", "log_custom_entries_to_extra"], optional = true }
|
router_env = { version = "0.1.0", path = "../router_env", features = ["log_extra_implicit_fields", "log_custom_entries_to_extra"], optional = true }
|
||||||
common_enums = { version = "0.1.0", path = "../common_enums" }
|
|
||||||
|
|
||||||
[target.'cfg(not(target_os = "windows"))'.dependencies]
|
[target.'cfg(not(target_os = "windows"))'.dependencies]
|
||||||
signal-hook-tokio = { version = "0.3.1", features = ["futures-v0_3"], optional = true }
|
signal-hook-tokio = { version = "0.3.1", features = ["futures-v0_3"], optional = true }
|
||||||
|
|||||||
@ -8,16 +8,15 @@ readme = "README.md"
|
|||||||
license.workspace = true
|
license.workspace = true
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = ["olap", "oltp"]
|
default = ["olap"]
|
||||||
oltp = []
|
|
||||||
olap = []
|
olap = []
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
# First party deps
|
# First party deps
|
||||||
api_models = { version = "0.1.0", path = "../api_models" }
|
api_models = { version = "0.1.0", path = "../api_models" }
|
||||||
masking = { version = "0.1.0", path = "../masking" }
|
|
||||||
common_enums = { version = "0.1.0", path = "../common_enums" }
|
common_enums = { version = "0.1.0", path = "../common_enums" }
|
||||||
common_utils = { version = "0.1.0", path = "../common_utils" }
|
common_utils = { version = "0.1.0", path = "../common_utils" }
|
||||||
|
masking = { version = "0.1.0", path = "../masking" }
|
||||||
|
|
||||||
|
|
||||||
# Third party deps
|
# Third party deps
|
||||||
@ -25,6 +24,5 @@ async-trait = "0.1.68"
|
|||||||
error-stack = "0.3.1"
|
error-stack = "0.3.1"
|
||||||
serde = { version = "1.0.163", features = ["derive"] }
|
serde = { version = "1.0.163", features = ["derive"] }
|
||||||
serde_json = "1.0.96"
|
serde_json = "1.0.96"
|
||||||
strum = { version = "0.25", features = [ "derive" ] }
|
|
||||||
thiserror = "1.0.40"
|
thiserror = "1.0.40"
|
||||||
time = { version = "0.3.21", features = ["serde", "serde-well-known", "std"] }
|
time = { version = "0.3.21", features = ["serde", "serde-well-known", "std"] }
|
||||||
|
|||||||
@ -9,15 +9,10 @@ license.workspace = true
|
|||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = ["kv_store"]
|
default = ["kv_store"]
|
||||||
email = ["external_services/email", "dep:aws-config"]
|
|
||||||
kms = ["external_services/kms", "dep:aws-config"]
|
|
||||||
kv_store = []
|
kv_store = []
|
||||||
s3 = ["dep:aws-sdk-s3", "dep:aws-config"]
|
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
async-bb8-diesel = "0.1.0"
|
async-bb8-diesel = "0.1.0"
|
||||||
aws-config = { version = "0.55.3", optional = true }
|
|
||||||
aws-sdk-s3 = { version = "0.28.0", optional = true }
|
|
||||||
diesel = { version = "2.1.0", features = ["postgres", "serde_json", "time", "64-column-tables"] }
|
diesel = { version = "2.1.0", features = ["postgres", "serde_json", "time", "64-column-tables"] }
|
||||||
error-stack = "0.3.1"
|
error-stack = "0.3.1"
|
||||||
frunk = "0.4.1"
|
frunk = "0.4.1"
|
||||||
@ -31,7 +26,6 @@ time = { version = "0.3.21", features = ["serde", "serde-well-known", "std"] }
|
|||||||
# First party crates
|
# First party crates
|
||||||
common_enums = { path = "../common_enums" }
|
common_enums = { path = "../common_enums" }
|
||||||
common_utils = { version = "0.1.0", path = "../common_utils" }
|
common_utils = { version = "0.1.0", path = "../common_utils" }
|
||||||
external_services = { version = "0.1.0", path = "../external_services" }
|
|
||||||
masking = { version = "0.1.0", path = "../masking" }
|
masking = { version = "0.1.0", path = "../masking" }
|
||||||
router_derive = { version = "0.1.0", path = "../router_derive" }
|
router_derive = { version = "0.1.0", path = "../router_derive" }
|
||||||
router_env = { version = "0.1.0", path = "../router_env", features = ["log_extra_implicit_fields", "log_custom_entries_to_extra"] }
|
router_env = { version = "0.1.0", path = "../router_env", features = ["log_extra_implicit_fields", "log_custom_entries_to_extra"] }
|
||||||
|
|||||||
@ -28,11 +28,11 @@ tokio = { version = "1.28.2", features = ["macros", "rt-multi-thread"] }
|
|||||||
|
|
||||||
# First Party Crates
|
# First Party Crates
|
||||||
common_utils = { version = "0.1.0", path = "../common_utils", features = ["signals"] }
|
common_utils = { version = "0.1.0", path = "../common_utils", features = ["signals"] }
|
||||||
|
diesel_models = { version = "0.1.0", path = "../diesel_models", features = ["kv_store"] }
|
||||||
external_services = { version = "0.1.0", path = "../external_services" }
|
external_services = { version = "0.1.0", path = "../external_services" }
|
||||||
masking = { version = "0.1.0", path = "../masking" }
|
masking = { version = "0.1.0", path = "../masking" }
|
||||||
redis_interface = { version = "0.1.0", path = "../redis_interface" }
|
redis_interface = { version = "0.1.0", path = "../redis_interface" }
|
||||||
router_env = { version = "0.1.0", path = "../router_env", features = ["log_extra_implicit_fields", "log_custom_entries_to_extra"] }
|
router_env = { version = "0.1.0", path = "../router_env", features = ["log_extra_implicit_fields", "log_custom_entries_to_extra"] }
|
||||||
diesel_models = { version = "0.1.0", path = "../diesel_models", features = ["kv_store"] }
|
|
||||||
|
|
||||||
[build-dependencies]
|
[build-dependencies]
|
||||||
router_env = { version = "0.1.0", path = "../router_env", default-features = false }
|
router_env = { version = "0.1.0", path = "../router_env", default-features = false }
|
||||||
|
|||||||
@ -6,6 +6,7 @@ edition.workspace = true
|
|||||||
rust-version.workspace = true
|
rust-version.workspace = true
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
|
erased-serde = "0.3.28"
|
||||||
frunk = "0.4.1"
|
frunk = "0.4.1"
|
||||||
frunk_core = "0.4.1"
|
frunk_core = "0.4.1"
|
||||||
nom = { version = "7.1.3", features = ["alloc"], optional = true }
|
nom = { version = "7.1.3", features = ["alloc"], optional = true }
|
||||||
@ -13,7 +14,6 @@ once_cell = "1.18.0"
|
|||||||
rustc-hash = "1.1.0"
|
rustc-hash = "1.1.0"
|
||||||
serde = { version = "1.0.163", features = ["derive", "rc"] }
|
serde = { version = "1.0.163", features = ["derive", "rc"] }
|
||||||
serde_json = "1.0.96"
|
serde_json = "1.0.96"
|
||||||
erased-serde = "0.3.28"
|
|
||||||
strum = { version = "0.25", features = ["derive"] }
|
strum = { version = "0.25", features = ["derive"] }
|
||||||
thiserror = "1.0.43"
|
thiserror = "1.0.43"
|
||||||
|
|
||||||
@ -24,10 +24,8 @@ euclid_macros = { version = "0.1.0", path = "../euclid_macros" }
|
|||||||
[features]
|
[features]
|
||||||
ast_parser = ["dep:nom"]
|
ast_parser = ["dep:nom"]
|
||||||
valued_jit = []
|
valued_jit = []
|
||||||
connector_choice_bcompat = []
|
|
||||||
connector_choice_mca_id = []
|
connector_choice_mca_id = []
|
||||||
dummy_connector = []
|
dummy_connector = []
|
||||||
backwards_compatibility = ["connector_choice_bcompat"]
|
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
criterion = "0.5"
|
criterion = "0.5"
|
||||||
|
|||||||
@ -10,28 +10,21 @@ rust-version.workspace = true
|
|||||||
crate-type = ["cdylib"]
|
crate-type = ["cdylib"]
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = ["connector_choice_bcompat", "payouts"]
|
default = ["connector_choice_bcompat"]
|
||||||
connector_choice_bcompat = [
|
connector_choice_bcompat = ["api_models/connector_choice_bcompat"]
|
||||||
"euclid/connector_choice_bcompat",
|
connector_choice_mca_id = ["api_models/connector_choice_mca_id", "euclid/connector_choice_mca_id", "kgraph_utils/connector_choice_mca_id"]
|
||||||
"api_models/connector_choice_bcompat",
|
|
||||||
"kgraph_utils/backwards_compatibility"
|
|
||||||
]
|
|
||||||
connector_choice_mca_id = [
|
|
||||||
"api_models/connector_choice_mca_id",
|
|
||||||
"euclid/connector_choice_mca_id",
|
|
||||||
"kgraph_utils/connector_choice_mca_id"
|
|
||||||
]
|
|
||||||
dummy_connector = ["kgraph_utils/dummy_connector"]
|
dummy_connector = ["kgraph_utils/dummy_connector"]
|
||||||
payouts = []
|
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
api_models = { version = "0.1.0", path = "../api_models", package = "api_models" }
|
api_models = { version = "0.1.0", path = "../api_models", package = "api_models" }
|
||||||
euclid = { path = "../euclid", features = [] }
|
euclid = { path = "../euclid", features = [] }
|
||||||
kgraph_utils = { version = "0.1.0", path = "../kgraph_utils" }
|
kgraph_utils = { version = "0.1.0", path = "../kgraph_utils" }
|
||||||
|
|
||||||
|
# Third party crates
|
||||||
getrandom = { version = "0.2.10", features = ["js"] }
|
getrandom = { version = "0.2.10", features = ["js"] }
|
||||||
once_cell = "1.18.0"
|
once_cell = "1.18.0"
|
||||||
|
ron-parser = "0.1.4"
|
||||||
serde = { version = "1.0", features = [] }
|
serde = { version = "1.0", features = [] }
|
||||||
serde-wasm-bindgen = "0.5"
|
serde-wasm-bindgen = "0.5"
|
||||||
strum = { version = "0.25", features = ["derive"] }
|
strum = { version = "0.25", features = ["derive"] }
|
||||||
wasm-bindgen = { version = "0.2.86" }
|
wasm-bindgen = { version = "0.2.86" }
|
||||||
ron-parser = "0.1.4"
|
|
||||||
|
|||||||
@ -7,7 +7,6 @@ rust-version.workspace = true
|
|||||||
|
|
||||||
[features]
|
[features]
|
||||||
dummy_connector = ["api_models/dummy_connector", "euclid/dummy_connector"]
|
dummy_connector = ["api_models/dummy_connector", "euclid/dummy_connector"]
|
||||||
backwards_compatibility = ["euclid/backwards_compatibility", "euclid/backwards_compatibility"]
|
|
||||||
connector_choice_mca_id = ["api_models/connector_choice_mca_id", "euclid/connector_choice_mca_id"]
|
connector_choice_mca_id = ["api_models/connector_choice_mca_id", "euclid/connector_choice_mca_id"]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
@ -15,6 +14,7 @@ api_models = { version = "0.1.0", path = "../api_models", package = "api_models"
|
|||||||
euclid = { version = "0.1.0", path = "../euclid" }
|
euclid = { version = "0.1.0", path = "../euclid" }
|
||||||
masking = { version = "0.1.0", path = "../masking/" }
|
masking = { version = "0.1.0", path = "../masking/" }
|
||||||
|
|
||||||
|
# Third party crates
|
||||||
serde = "1.0.163"
|
serde = "1.0.163"
|
||||||
serde_json = "1.0.96"
|
serde_json = "1.0.96"
|
||||||
thiserror = "1.0.43"
|
thiserror = "1.0.43"
|
||||||
|
|||||||
@ -17,12 +17,12 @@ basilisk = ["kms"]
|
|||||||
stripe = ["dep:serde_qs"]
|
stripe = ["dep:serde_qs"]
|
||||||
release = ["kms", "stripe", "basilisk", "s3", "email", "business_profile_routing", "accounts_cache", "kv_store", "profile_specific_fallback_routing"]
|
release = ["kms", "stripe", "basilisk", "s3", "email", "business_profile_routing", "accounts_cache", "kv_store", "profile_specific_fallback_routing"]
|
||||||
olap = ["data_models/olap", "storage_impl/olap", "scheduler/olap"]
|
olap = ["data_models/olap", "storage_impl/olap", "scheduler/olap"]
|
||||||
oltp = ["data_models/oltp", "storage_impl/oltp"]
|
oltp = ["storage_impl/oltp"]
|
||||||
kv_store = ["scheduler/kv_store"]
|
kv_store = ["scheduler/kv_store"]
|
||||||
accounts_cache = []
|
accounts_cache = []
|
||||||
openapi = ["olap", "oltp", "payouts"]
|
openapi = ["olap", "oltp", "payouts"]
|
||||||
vergen = ["router_env/vergen"]
|
vergen = ["router_env/vergen"]
|
||||||
backwards_compatibility = ["api_models/backwards_compatibility", "euclid/backwards_compatibility", "kgraph_utils/backwards_compatibility"]
|
backwards_compatibility = ["api_models/backwards_compatibility"]
|
||||||
business_profile_routing = ["api_models/business_profile_routing"]
|
business_profile_routing = ["api_models/business_profile_routing"]
|
||||||
profile_specific_fallback_routing = []
|
profile_specific_fallback_routing = []
|
||||||
dummy_connector = ["api_models/dummy_connector", "euclid/dummy_connector", "kgraph_utils/dummy_connector"]
|
dummy_connector = ["api_models/dummy_connector", "euclid/dummy_connector", "kgraph_utils/dummy_connector"]
|
||||||
@ -30,11 +30,9 @@ connector_choice_mca_id = ["api_models/connector_choice_mca_id", "euclid/connect
|
|||||||
external_access_dc = ["dummy_connector"]
|
external_access_dc = ["dummy_connector"]
|
||||||
detailed_errors = ["api_models/detailed_errors", "error-stack/serde"]
|
detailed_errors = ["api_models/detailed_errors", "error-stack/serde"]
|
||||||
payouts = []
|
payouts = []
|
||||||
api_locking = []
|
|
||||||
|
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
actix = "0.13.0"
|
|
||||||
actix-cors = "0.6.4"
|
actix-cors = "0.6.4"
|
||||||
actix-multipart = "0.6.0"
|
actix-multipart = "0.6.0"
|
||||||
actix-rt = "2.8.0"
|
actix-rt = "2.8.0"
|
||||||
@ -52,6 +50,7 @@ bytes = "1.4.0"
|
|||||||
clap = { version = "4.3.2", default-features = false, features = ["std", "derive", "help", "usage"] }
|
clap = { version = "4.3.2", default-features = false, features = ["std", "derive", "help", "usage"] }
|
||||||
config = { version = "0.13.3", features = ["toml"] }
|
config = { version = "0.13.3", features = ["toml"] }
|
||||||
diesel = { version = "2.1.0", features = ["postgres"] }
|
diesel = { version = "2.1.0", features = ["postgres"] }
|
||||||
|
digest = "0.9"
|
||||||
dyn-clone = "1.0.11"
|
dyn-clone = "1.0.11"
|
||||||
encoding_rs = "0.8.32"
|
encoding_rs = "0.8.32"
|
||||||
error-stack = "0.3.1"
|
error-stack = "0.3.1"
|
||||||
@ -63,13 +62,13 @@ image = "0.23.14"
|
|||||||
infer = "0.13.0"
|
infer = "0.13.0"
|
||||||
josekit = "0.8.3"
|
josekit = "0.8.3"
|
||||||
jsonwebtoken = "8.3.0"
|
jsonwebtoken = "8.3.0"
|
||||||
literally = "0.1.3"
|
|
||||||
maud = { version = "0.25", features = ["actix-web"] }
|
maud = { version = "0.25", features = ["actix-web"] }
|
||||||
mimalloc = { version = "0.1", optional = true }
|
mimalloc = { version = "0.1", optional = true }
|
||||||
mime = "0.3.17"
|
mime = "0.3.17"
|
||||||
nanoid = "0.4.0"
|
nanoid = "0.4.0"
|
||||||
num_cpus = "1.15.0"
|
num_cpus = "1.15.0"
|
||||||
once_cell = "1.18.0"
|
once_cell = "1.18.0"
|
||||||
|
openssl = "0.10.55"
|
||||||
qrcode = "0.12.0"
|
qrcode = "0.12.0"
|
||||||
rand = "0.8.5"
|
rand = "0.8.5"
|
||||||
rand_chacha = "0.3.1"
|
rand_chacha = "0.3.1"
|
||||||
@ -84,44 +83,38 @@ serde_path_to_error = "0.1.11"
|
|||||||
serde_qs = { version = "0.12.0", optional = true }
|
serde_qs = { version = "0.12.0", optional = true }
|
||||||
serde_urlencoded = "0.7.1"
|
serde_urlencoded = "0.7.1"
|
||||||
serde_with = "3.0.0"
|
serde_with = "3.0.0"
|
||||||
signal-hook = "0.3.15"
|
sha-1 = { version = "0.9" }
|
||||||
strum = { version = "0.24.1", features = ["derive"] }
|
|
||||||
sqlx = { version = "0.6.3", features = ["postgres", "runtime-actix", "runtime-actix-native-tls", "time", "bigdecimal"] }
|
sqlx = { version = "0.6.3", features = ["postgres", "runtime-actix", "runtime-actix-native-tls", "time", "bigdecimal"] }
|
||||||
|
strum = { version = "0.24.1", features = ["derive"] }
|
||||||
|
tera = "1.19.1"
|
||||||
thiserror = "1.0.40"
|
thiserror = "1.0.40"
|
||||||
time = { version = "0.3.21", features = ["serde", "serde-well-known", "std"] }
|
time = { version = "0.3.21", features = ["serde", "serde-well-known", "std"] }
|
||||||
tokio = { version = "1.28.2", features = ["macros", "rt-multi-thread"] }
|
tokio = { version = "1.28.2", features = ["macros", "rt-multi-thread"] }
|
||||||
tera = "1.19.1"
|
|
||||||
unicode-segmentation = "1.10.1"
|
unicode-segmentation = "1.10.1"
|
||||||
url = { version = "2.4.0", features = ["serde"] }
|
url = { version = "2.4.0", features = ["serde"] }
|
||||||
utoipa = { version = "3.3.0", features = ["preserve_order", "time"] }
|
utoipa = { version = "3.3.0", features = ["preserve_order", "time"] }
|
||||||
utoipa-swagger-ui = { version = "3.1.3", features = ["actix-web"] }
|
utoipa-swagger-ui = { version = "3.1.3", features = ["actix-web"] }
|
||||||
uuid = { version = "1.3.3", features = ["serde", "v4"] }
|
uuid = { version = "1.3.3", features = ["serde", "v4"] }
|
||||||
validator = "0.16.0"
|
validator = "0.16.0"
|
||||||
openssl = "0.10.55"
|
|
||||||
x509-parser = "0.15.0"
|
x509-parser = "0.15.0"
|
||||||
sha-1 = { version = "0.9"}
|
|
||||||
digest = "0.9"
|
|
||||||
|
|
||||||
# First party crates
|
# First party crates
|
||||||
api_models = { version = "0.1.0", path = "../api_models", features = ["errors"] }
|
api_models = { version = "0.1.0", path = "../api_models", features = ["errors"] }
|
||||||
cards = { version = "0.1.0", path = "../cards" }
|
cards = { version = "0.1.0", path = "../cards" }
|
||||||
common_utils = { version = "0.1.0", path = "../common_utils", features = ["signals", "async_ext", "logs"] }
|
|
||||||
common_enums = { version = "0.1.0", path = "../common_enums" }
|
common_enums = { version = "0.1.0", path = "../common_enums" }
|
||||||
external_services = { version = "0.1.0", path = "../external_services" }
|
common_utils = { version = "0.1.0", path = "../common_utils", features = ["signals", "async_ext", "logs"] }
|
||||||
|
data_models = { version = "0.1.0", path = "../data_models", default-features = false }
|
||||||
|
diesel_models = { version = "0.1.0", path = "../diesel_models", features = ["kv_store"] }
|
||||||
euclid = { version = "0.1.0", path = "../euclid", features = ["valued_jit"] }
|
euclid = { version = "0.1.0", path = "../euclid", features = ["valued_jit"] }
|
||||||
|
external_services = { version = "0.1.0", path = "../external_services" }
|
||||||
|
kgraph_utils = { version = "0.1.0", path = "../kgraph_utils" }
|
||||||
masking = { version = "0.1.0", path = "../masking" }
|
masking = { version = "0.1.0", path = "../masking" }
|
||||||
redis_interface = { version = "0.1.0", path = "../redis_interface" }
|
redis_interface = { version = "0.1.0", path = "../redis_interface" }
|
||||||
router_derive = { version = "0.1.0", path = "../router_derive" }
|
router_derive = { version = "0.1.0", path = "../router_derive" }
|
||||||
router_env = { version = "0.1.0", path = "../router_env", features = ["log_extra_implicit_fields", "log_custom_entries_to_extra"] }
|
router_env = { version = "0.1.0", path = "../router_env", features = ["log_extra_implicit_fields", "log_custom_entries_to_extra"] }
|
||||||
diesel_models = { version = "0.1.0", path = "../diesel_models", features = ["kv_store"] }
|
|
||||||
scheduler = { version = "0.1.0", path = "../scheduler", default-features = false }
|
scheduler = { version = "0.1.0", path = "../scheduler", default-features = false }
|
||||||
data_models = { version = "0.1.0", path = "../data_models", default-features = false }
|
|
||||||
kgraph_utils = { version = "0.1.0", path = "../kgraph_utils" }
|
|
||||||
storage_impl = { version = "0.1.0", path = "../storage_impl", default-features = false }
|
storage_impl = { version = "0.1.0", path = "../storage_impl", default-features = false }
|
||||||
|
|
||||||
[target.'cfg(not(target_os = "windows"))'.dependencies]
|
|
||||||
signal-hook-tokio = { version = "0.3.1", features = ["futures-v0_3"] }
|
|
||||||
|
|
||||||
[build-dependencies]
|
[build-dependencies]
|
||||||
router_env = { version = "0.1.0", path = "../router_env", default-features = false }
|
router_env = { version = "0.1.0", path = "../router_env", default-features = false }
|
||||||
|
|
||||||
@ -131,10 +124,8 @@ awc = { version = "3.1.1", features = ["rustls"] }
|
|||||||
derive_deref = "1.1.1"
|
derive_deref = "1.1.1"
|
||||||
rand = "0.8.5"
|
rand = "0.8.5"
|
||||||
serial_test = "2.0.0"
|
serial_test = "2.0.0"
|
||||||
thirtyfour = "0.31.0"
|
|
||||||
time = { version = "0.3.21", features = ["macros"] }
|
time = { version = "0.3.21", features = ["macros"] }
|
||||||
tokio = "1.28.2"
|
tokio = "1.28.2"
|
||||||
toml = "0.7.4"
|
|
||||||
wiremock = "0.5"
|
wiremock = "0.5"
|
||||||
|
|
||||||
# First party dev-dependencies
|
# First party dev-dependencies
|
||||||
|
|||||||
@ -23,6 +23,7 @@ impl utils::Connector for AdyenTest {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
fn get_payout_data(&self) -> Option<types::api::PayoutConnectorData> {
|
fn get_payout_data(&self) -> Option<types::api::PayoutConnectorData> {
|
||||||
use router::connector::Adyen;
|
use router::connector::Adyen;
|
||||||
Some(types::api::PayoutConnectorData {
|
Some(types::api::PayoutConnectorData {
|
||||||
@ -68,6 +69,7 @@ impl AdyenTest {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
fn get_payout_info(payout_type: enums::PayoutType) -> Option<PaymentInfo> {
|
fn get_payout_info(payout_type: enums::PayoutType) -> Option<PaymentInfo> {
|
||||||
Some(PaymentInfo {
|
Some(PaymentInfo {
|
||||||
country: Some(api_models::enums::CountryAlpha2::NL),
|
country: Some(api_models::enums::CountryAlpha2::NL),
|
||||||
|
|||||||
@ -12,6 +12,7 @@ impl utils::Connector for BankofamericaTest {
|
|||||||
use router::connector::Bankofamerica;
|
use router::connector::Bankofamerica;
|
||||||
types::api::ConnectorData {
|
types::api::ConnectorData {
|
||||||
connector: Box::new(&Bankofamerica),
|
connector: Box::new(&Bankofamerica),
|
||||||
|
// Remove `dummy_connector` feature gate from module in `main.rs` when updating this to use actual connector variant
|
||||||
connector_name: types::Connector::DummyConnector1,
|
connector_name: types::Connector::DummyConnector1,
|
||||||
get_token: types::api::GetToken::Connector,
|
get_token: types::api::GetToken::Connector,
|
||||||
merchant_connector_id: None,
|
merchant_connector_id: None,
|
||||||
|
|||||||
@ -14,7 +14,7 @@ impl utils::Connector for GlobepayTest {
|
|||||||
use router::connector::Globepay;
|
use router::connector::Globepay;
|
||||||
types::api::ConnectorData {
|
types::api::ConnectorData {
|
||||||
connector: Box::new(&Globepay),
|
connector: Box::new(&Globepay),
|
||||||
connector_name: types::Connector::DummyConnector1,
|
connector_name: types::Connector::Globepay,
|
||||||
get_token: types::api::GetToken::Connector,
|
get_token: types::api::GetToken::Connector,
|
||||||
merchant_connector_id: None,
|
merchant_connector_id: None,
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,7 +12,7 @@ impl utils::Connector for GocardlessTest {
|
|||||||
use router::connector::Gocardless;
|
use router::connector::Gocardless;
|
||||||
types::api::ConnectorData {
|
types::api::ConnectorData {
|
||||||
connector: Box::new(&Gocardless),
|
connector: Box::new(&Gocardless),
|
||||||
connector_name: types::Connector::DummyConnector1,
|
connector_name: types::Connector::Gocardless,
|
||||||
get_token: types::api::GetToken::Connector,
|
get_token: types::api::GetToken::Connector,
|
||||||
merchant_connector_id: None,
|
merchant_connector_id: None,
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,7 +12,7 @@ impl utils::Connector for HelcimTest {
|
|||||||
use router::connector::Helcim;
|
use router::connector::Helcim;
|
||||||
types::api::ConnectorData {
|
types::api::ConnectorData {
|
||||||
connector: Box::new(&Helcim),
|
connector: Box::new(&Helcim),
|
||||||
connector_name: types::Connector::DummyConnector1,
|
connector_name: types::Connector::Helcim,
|
||||||
get_token: types::api::GetToken::Connector,
|
get_token: types::api::GetToken::Connector,
|
||||||
merchant_connector_id: None,
|
merchant_connector_id: None,
|
||||||
}
|
}
|
||||||
|
|||||||
@ -11,6 +11,7 @@ mod adyen;
|
|||||||
mod airwallex;
|
mod airwallex;
|
||||||
mod authorizedotnet;
|
mod authorizedotnet;
|
||||||
mod bambora;
|
mod bambora;
|
||||||
|
#[cfg(feature = "dummy_connector")]
|
||||||
mod bankofamerica;
|
mod bankofamerica;
|
||||||
mod bitpay;
|
mod bitpay;
|
||||||
mod bluesnap;
|
mod bluesnap;
|
||||||
@ -36,13 +37,16 @@ mod nexinets;
|
|||||||
mod nmi;
|
mod nmi;
|
||||||
mod noon;
|
mod noon;
|
||||||
mod nuvei;
|
mod nuvei;
|
||||||
|
#[cfg(feature = "dummy_connector")]
|
||||||
mod opayo;
|
mod opayo;
|
||||||
mod opennode;
|
mod opennode;
|
||||||
|
#[cfg(feature = "dummy_connector")]
|
||||||
mod payeezy;
|
mod payeezy;
|
||||||
mod payme;
|
mod payme;
|
||||||
mod paypal;
|
mod paypal;
|
||||||
mod payu;
|
mod payu;
|
||||||
mod powertranz;
|
mod powertranz;
|
||||||
|
#[cfg(feature = "dummy_connector")]
|
||||||
mod prophetpay;
|
mod prophetpay;
|
||||||
mod rapyd;
|
mod rapyd;
|
||||||
mod shift4;
|
mod shift4;
|
||||||
|
|||||||
@ -16,6 +16,7 @@ impl utils::Connector for OpayoTest {
|
|||||||
use router::connector::Opayo;
|
use router::connector::Opayo;
|
||||||
types::api::ConnectorData {
|
types::api::ConnectorData {
|
||||||
connector: Box::new(&Opayo),
|
connector: Box::new(&Opayo),
|
||||||
|
// Remove `dummy_connector` feature gate from module in `main.rs` when updating this to use actual connector variant
|
||||||
connector_name: types::Connector::DummyConnector1,
|
connector_name: types::Connector::DummyConnector1,
|
||||||
get_token: types::api::GetToken::Connector,
|
get_token: types::api::GetToken::Connector,
|
||||||
merchant_connector_id: None,
|
merchant_connector_id: None,
|
||||||
|
|||||||
@ -22,6 +22,7 @@ impl utils::Connector for PayeezyTest {
|
|||||||
use router::connector::Payeezy;
|
use router::connector::Payeezy;
|
||||||
types::api::ConnectorData {
|
types::api::ConnectorData {
|
||||||
connector: Box::new(&Payeezy),
|
connector: Box::new(&Payeezy),
|
||||||
|
// Remove `dummy_connector` feature gate from module in `main.rs` when updating this to use actual connector variant
|
||||||
connector_name: types::Connector::DummyConnector1,
|
connector_name: types::Connector::DummyConnector1,
|
||||||
get_token: types::api::GetToken::Connector,
|
get_token: types::api::GetToken::Connector,
|
||||||
merchant_connector_id: None,
|
merchant_connector_id: None,
|
||||||
|
|||||||
@ -14,7 +14,7 @@ impl utils::Connector for PowertranzTest {
|
|||||||
use router::connector::Powertranz;
|
use router::connector::Powertranz;
|
||||||
types::api::ConnectorData {
|
types::api::ConnectorData {
|
||||||
connector: Box::new(&Powertranz),
|
connector: Box::new(&Powertranz),
|
||||||
connector_name: types::Connector::DummyConnector1,
|
connector_name: types::Connector::Powertranz,
|
||||||
get_token: types::api::GetToken::Connector,
|
get_token: types::api::GetToken::Connector,
|
||||||
merchant_connector_id: None,
|
merchant_connector_id: None,
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,6 +12,7 @@ impl utils::Connector for ProphetpayTest {
|
|||||||
use router::connector::Prophetpay;
|
use router::connector::Prophetpay;
|
||||||
types::api::ConnectorData {
|
types::api::ConnectorData {
|
||||||
connector: Box::new(&Prophetpay),
|
connector: Box::new(&Prophetpay),
|
||||||
|
// Remove `dummy_connector` feature gate from module in `main.rs` when updating this to use actual connector variant
|
||||||
connector_name: types::Connector::DummyConnector1,
|
connector_name: types::Connector::DummyConnector1,
|
||||||
get_token: types::api::GetToken::Connector,
|
get_token: types::api::GetToken::Connector,
|
||||||
merchant_connector_id: None,
|
merchant_connector_id: None,
|
||||||
|
|||||||
@ -4,9 +4,11 @@ use async_trait::async_trait;
|
|||||||
use common_utils::pii::Email;
|
use common_utils::pii::Email;
|
||||||
use error_stack::Report;
|
use error_stack::Report;
|
||||||
use masking::Secret;
|
use masking::Secret;
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
|
use router::core::utils as core_utils;
|
||||||
use router::{
|
use router::{
|
||||||
configs::settings::Settings,
|
configs::settings::Settings,
|
||||||
core::{errors, errors::ConnectorError, payments, utils as core_utils},
|
core::{errors, errors::ConnectorError, payments},
|
||||||
db::StorageImpl,
|
db::StorageImpl,
|
||||||
routes, services,
|
routes, services,
|
||||||
types::{self, api, storage::enums, AccessToken, PaymentAddress, RouterData},
|
types::{self, api, storage::enums, AccessToken, PaymentAddress, RouterData},
|
||||||
@ -17,15 +19,21 @@ use wiremock::{Mock, MockServer};
|
|||||||
|
|
||||||
pub trait Connector {
|
pub trait Connector {
|
||||||
fn get_data(&self) -> types::api::ConnectorData;
|
fn get_data(&self) -> types::api::ConnectorData;
|
||||||
|
|
||||||
fn get_auth_token(&self) -> types::ConnectorAuthType;
|
fn get_auth_token(&self) -> types::ConnectorAuthType;
|
||||||
|
|
||||||
fn get_name(&self) -> String;
|
fn get_name(&self) -> String;
|
||||||
|
|
||||||
fn get_connector_meta(&self) -> Option<serde_json::Value> {
|
fn get_connector_meta(&self) -> Option<serde_json::Value> {
|
||||||
None
|
None
|
||||||
}
|
}
|
||||||
|
|
||||||
/// interval in seconds to be followed when making the subsequent request whenever needed
|
/// interval in seconds to be followed when making the subsequent request whenever needed
|
||||||
fn get_request_interval(&self) -> u64 {
|
fn get_request_interval(&self) -> u64 {
|
||||||
5
|
5
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
fn get_payout_data(&self) -> Option<types::api::PayoutConnectorData> {
|
fn get_payout_data(&self) -> Option<types::api::PayoutConnectorData> {
|
||||||
None
|
None
|
||||||
}
|
}
|
||||||
@ -423,6 +431,7 @@ pub trait ConnectorActions: Connector {
|
|||||||
Err(errors::ConnectorError::ProcessingStepFailed(None).into())
|
Err(errors::ConnectorError::ProcessingStepFailed(None).into())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
fn get_payout_request<Flow, Res>(
|
fn get_payout_request<Flow, Res>(
|
||||||
&self,
|
&self,
|
||||||
connector_payout_id: Option<String>,
|
connector_payout_id: Option<String>,
|
||||||
@ -534,6 +543,7 @@ pub trait ConnectorActions: Connector {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
async fn verify_payout_eligibility(
|
async fn verify_payout_eligibility(
|
||||||
&self,
|
&self,
|
||||||
payout_type: enums::PayoutType,
|
payout_type: enums::PayoutType,
|
||||||
@ -572,6 +582,7 @@ pub trait ConnectorActions: Connector {
|
|||||||
Ok(res.response.unwrap())
|
Ok(res.response.unwrap())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
async fn fulfill_payout(
|
async fn fulfill_payout(
|
||||||
&self,
|
&self,
|
||||||
connector_payout_id: Option<String>,
|
connector_payout_id: Option<String>,
|
||||||
@ -611,6 +622,7 @@ pub trait ConnectorActions: Connector {
|
|||||||
Ok(res.response.unwrap())
|
Ok(res.response.unwrap())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
async fn create_payout(
|
async fn create_payout(
|
||||||
&self,
|
&self,
|
||||||
connector_customer: Option<String>,
|
connector_customer: Option<String>,
|
||||||
@ -651,6 +663,7 @@ pub trait ConnectorActions: Connector {
|
|||||||
Ok(res.response.unwrap())
|
Ok(res.response.unwrap())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
async fn cancel_payout(
|
async fn cancel_payout(
|
||||||
&self,
|
&self,
|
||||||
connector_payout_id: String,
|
connector_payout_id: String,
|
||||||
@ -691,6 +704,7 @@ pub trait ConnectorActions: Connector {
|
|||||||
Ok(res.response.unwrap())
|
Ok(res.response.unwrap())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
async fn create_and_fulfill_payout(
|
async fn create_and_fulfill_payout(
|
||||||
&self,
|
&self,
|
||||||
connector_customer: Option<String>,
|
connector_customer: Option<String>,
|
||||||
@ -714,6 +728,7 @@ pub trait ConnectorActions: Connector {
|
|||||||
Ok(fulfill_res)
|
Ok(fulfill_res)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
async fn create_and_cancel_payout(
|
async fn create_and_cancel_payout(
|
||||||
&self,
|
&self,
|
||||||
connector_customer: Option<String>,
|
connector_customer: Option<String>,
|
||||||
@ -737,6 +752,7 @@ pub trait ConnectorActions: Connector {
|
|||||||
Ok(cancel_res)
|
Ok(cancel_res)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
async fn create_payout_recipient(
|
async fn create_payout_recipient(
|
||||||
&self,
|
&self,
|
||||||
payout_type: enums::PayoutType,
|
payout_type: enums::PayoutType,
|
||||||
|
|||||||
@ -12,7 +12,7 @@ impl utils::Connector for VoltTest {
|
|||||||
use router::connector::Volt;
|
use router::connector::Volt;
|
||||||
types::api::ConnectorData {
|
types::api::ConnectorData {
|
||||||
connector: Box::new(&Volt),
|
connector: Box::new(&Volt),
|
||||||
connector_name: types::Connector::DummyConnector1,
|
connector_name: types::Connector::Volt,
|
||||||
get_token: types::api::GetToken::Connector,
|
get_token: types::api::GetToken::Connector,
|
||||||
merchant_connector_id: None,
|
merchant_connector_id: None,
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,10 +1,16 @@
|
|||||||
|
#[cfg(feature = "payouts")]
|
||||||
use api_models::payments::{Address, AddressDetails};
|
use api_models::payments::{Address, AddressDetails};
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
use masking::Secret;
|
use masking::Secret;
|
||||||
use router::types::{self, api, storage::enums, PaymentAddress};
|
use router::types;
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
|
use router::types::{api, storage::enums, PaymentAddress};
|
||||||
|
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
|
use crate::utils::PaymentInfo;
|
||||||
use crate::{
|
use crate::{
|
||||||
connector_auth,
|
connector_auth,
|
||||||
utils::{self, ConnectorActions, PaymentInfo},
|
utils::{self, ConnectorActions},
|
||||||
};
|
};
|
||||||
|
|
||||||
struct WiseTest;
|
struct WiseTest;
|
||||||
@ -20,6 +26,7 @@ impl utils::Connector for WiseTest {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
fn get_payout_data(&self) -> Option<types::api::PayoutConnectorData> {
|
fn get_payout_data(&self) -> Option<types::api::PayoutConnectorData> {
|
||||||
use router::connector::Wise;
|
use router::connector::Wise;
|
||||||
Some(types::api::PayoutConnectorData {
|
Some(types::api::PayoutConnectorData {
|
||||||
@ -44,6 +51,7 @@ impl utils::Connector for WiseTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl WiseTest {
|
impl WiseTest {
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
fn get_payout_info() -> Option<PaymentInfo> {
|
fn get_payout_info() -> Option<PaymentInfo> {
|
||||||
Some(PaymentInfo {
|
Some(PaymentInfo {
|
||||||
country: Some(api_models::enums::CountryAlpha2::NL),
|
country: Some(api_models::enums::CountryAlpha2::NL),
|
||||||
@ -75,6 +83,7 @@ impl WiseTest {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "payouts")]
|
||||||
static CONNECTOR: WiseTest = WiseTest {};
|
static CONNECTOR: WiseTest = WiseTest {};
|
||||||
|
|
||||||
/******************** Payouts test cases ********************/
|
/******************** Payouts test cases ********************/
|
||||||
|
|||||||
@ -32,9 +32,6 @@ redis_interface = { version = "0.1.0", path = "../redis_interface" }
|
|||||||
router_env = { version = "0.1.0", path = "../router_env", features = ["log_extra_implicit_fields", "log_custom_entries_to_extra"] }
|
router_env = { version = "0.1.0", path = "../router_env", features = ["log_extra_implicit_fields", "log_custom_entries_to_extra"] }
|
||||||
storage_impl = { version = "0.1.0", path = "../storage_impl", default-features = false }
|
storage_impl = { version = "0.1.0", path = "../storage_impl", default-features = false }
|
||||||
|
|
||||||
[target.'cfg(not(target_os = "windows"))'.dependencies]
|
|
||||||
signal-hook-tokio = { version = "0.3.1", features = ["futures-v0_3"] }
|
|
||||||
|
|
||||||
# [[bin]]
|
# [[bin]]
|
||||||
# name = "scheduler"
|
# name = "scheduler"
|
||||||
# path = "src/bin/scheduler.rs"
|
# path = "src/bin/scheduler.rs"
|
||||||
|
|||||||
@ -9,22 +9,20 @@ license.workspace = true
|
|||||||
|
|
||||||
# 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]
|
||||||
kms = ["external_services/kms"]
|
|
||||||
default = ["olap", "oltp"]
|
default = ["olap", "oltp"]
|
||||||
oltp = ["data_models/oltp"]
|
oltp = []
|
||||||
olap = ["data_models/olap"]
|
olap = ["data_models/olap"]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
# First Party dependencies
|
# First Party dependencies
|
||||||
common_utils = { version = "0.1.0", path = "../common_utils" }
|
|
||||||
api_models = { version = "0.1.0", path = "../api_models" }
|
api_models = { version = "0.1.0", path = "../api_models" }
|
||||||
diesel_models = { version = "0.1.0", path = "../diesel_models" }
|
common_utils = { version = "0.1.0", path = "../common_utils" }
|
||||||
data_models = { version = "0.1.0", path = "../data_models", default-features = false }
|
data_models = { version = "0.1.0", path = "../data_models", default-features = false }
|
||||||
|
diesel_models = { version = "0.1.0", path = "../diesel_models" }
|
||||||
masking = { version = "0.1.0", path = "../masking" }
|
masking = { version = "0.1.0", path = "../masking" }
|
||||||
redis_interface = { version = "0.1.0", path = "../redis_interface" }
|
redis_interface = { version = "0.1.0", path = "../redis_interface" }
|
||||||
router_env = { version = "0.1.0", path = "../router_env" }
|
|
||||||
external_services = { version = "0.1.0", path = "../external_services" }
|
|
||||||
router_derive = { version = "0.1.0", path = "../router_derive" }
|
router_derive = { version = "0.1.0", path = "../router_derive" }
|
||||||
|
router_env = { version = "0.1.0", path = "../router_env" }
|
||||||
|
|
||||||
# Third party crates
|
# Third party crates
|
||||||
actix-web = "4.3.1"
|
actix-web = "4.3.1"
|
||||||
@ -34,16 +32,16 @@ bb8 = "0.8.1"
|
|||||||
bytes = "1.4.0"
|
bytes = "1.4.0"
|
||||||
config = { version = "0.13.3", features = ["toml"] }
|
config = { version = "0.13.3", features = ["toml"] }
|
||||||
crc32fast = "1.3.2"
|
crc32fast = "1.3.2"
|
||||||
futures = "0.3.28"
|
|
||||||
diesel = { version = "2.1.0", default-features = false, features = ["postgres"] }
|
diesel = { version = "2.1.0", default-features = false, features = ["postgres"] }
|
||||||
dyn-clone = "1.0.12"
|
dyn-clone = "1.0.12"
|
||||||
error-stack = "0.3.1"
|
error-stack = "0.3.1"
|
||||||
|
futures = "0.3.28"
|
||||||
http = "0.2.9"
|
http = "0.2.9"
|
||||||
mime = "0.3.17"
|
mime = "0.3.17"
|
||||||
moka = { version = "0.11.3", features = ["future"] }
|
moka = { version = "0.11.3", features = ["future"] }
|
||||||
once_cell = "1.18.0"
|
once_cell = "1.18.0"
|
||||||
ring = "0.16.20"
|
ring = "0.16.20"
|
||||||
thiserror = "1.0.40"
|
|
||||||
tokio = { version = "1.28.2", features = ["rt-multi-thread"] }
|
|
||||||
serde = { version = "1.0.185", features = ["derive"] }
|
serde = { version = "1.0.185", features = ["derive"] }
|
||||||
serde_json = "1.0.105"
|
serde_json = "1.0.105"
|
||||||
|
thiserror = "1.0.40"
|
||||||
|
tokio = { version = "1.28.2", features = ["rt-multi-thread"] }
|
||||||
|
|||||||
@ -9,30 +9,23 @@ license.workspace = true
|
|||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = ["dummy_connector", "payouts"]
|
default = ["dummy_connector", "payouts"]
|
||||||
dummy_connector = ["api_models/dummy_connector"]
|
dummy_connector = []
|
||||||
payouts = []
|
payouts = []
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
async-trait = "0.1.68"
|
async-trait = "0.1.68"
|
||||||
actix-web = "4.3.1"
|
|
||||||
base64 = "0.21.2"
|
base64 = "0.21.2"
|
||||||
clap = { version = "4.3.2", default-features = false, features = ["std", "derive", "help", "usage"] }
|
clap = { version = "4.3.2", default-features = false, features = ["std", "derive", "help", "usage"] }
|
||||||
serde = { version = "1.0.163", features = ["derive"] }
|
|
||||||
serde_json = "1.0.96"
|
|
||||||
serde_path_to_error = "0.1.11"
|
|
||||||
toml = "0.7.4"
|
|
||||||
serial_test = "2.0.0"
|
|
||||||
serde_urlencoded = "0.7.1"
|
|
||||||
actix-http = "3.3.1"
|
|
||||||
awc = { version = "3.1.1", features = ["rustls"] }
|
|
||||||
derive_deref = "1.1.1"
|
|
||||||
rand = "0.8.5"
|
rand = "0.8.5"
|
||||||
reqwest = { version = "0.11.18", features = ["native-tls"] }
|
reqwest = { version = "0.11.18", features = ["native-tls"] }
|
||||||
|
serde = { version = "1.0.163", features = ["derive"] }
|
||||||
|
serde_json = "1.0.96"
|
||||||
|
serde_urlencoded = "0.7.1"
|
||||||
|
serial_test = "2.0.0"
|
||||||
thirtyfour = "0.31.0"
|
thirtyfour = "0.31.0"
|
||||||
time = { version = "0.3.21", features = ["macros"] }
|
time = { version = "0.3.21", features = ["macros"] }
|
||||||
tokio = "1.28.2"
|
tokio = "1.28.2"
|
||||||
uuid = { version = "1.3.3", features = ["serde", "v4"] }
|
toml = "0.7.4"
|
||||||
|
|
||||||
# First party crates
|
# First party crates
|
||||||
api_models = { version = "0.1.0", path = "../api_models", features = ["errors"] }
|
|
||||||
masking = { version = "0.1.0", path = "../masking" }
|
masking = { version = "0.1.0", path = "../masking" }
|
||||||
|
|||||||
Reference in New Issue
Block a user