This makes the application fully async; freeing web server threads to handle new connections when waiting on SQL queries. Additionally sqlx will allow easier move to a different database if needed in the future. Includes some SQL optimizations as well (slow queries more easliy identifiable with sqlx).
53 lines
1.7 KiB
TOML
53 lines
1.7 KiB
TOML
[package]
|
|
name = "riftenlabs-indexer"
|
|
version = "0.2.0"
|
|
edition = "2021"
|
|
authors = ["Whiterun LLC <hello@riftenlabs.com>"]
|
|
description = "Riften Labs DeFi contract indexer on Bitcoin Cash"
|
|
license = "AGPL-3.0-or-later"
|
|
homepage = "https://gitlab.com/riftenlabs/riftenlabs-indexer"
|
|
repository = "https://gitlab.com/riftenlabs/riftenlabs-indexer"
|
|
keywords = ["bitcoincash", "bitcoin", "cauldron", "defi", "cpmm"]
|
|
readme = "README.md"
|
|
build = "build.rs"
|
|
|
|
[dependencies]
|
|
anyhow = { version = "1.0.94", features = ["backtrace"] }
|
|
bitcoincash = "0.29.2"
|
|
bitcoin_hashes = { version = "0.11.0", default-features = false } # Same version as used by bitcoincash
|
|
electrum-client-netagnostic = { version = "0.21.1", features = ["use-rustls", "use-websocket"] }
|
|
hex = "0.4.3"
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
serde_json = "1.0.133"
|
|
rocket = { version = "0.5.1", features = ["json"] }
|
|
sqlx = { version = "0.8", features = ["runtime-tokio", "sqlite"] }
|
|
rayon = "1.10.0"
|
|
riftenlabs-defi = "0.1.4"
|
|
rocket_cors = "0.6.0"
|
|
log = "0.4"
|
|
stderrlog = "0.6.0"
|
|
tokio = { version = "1", features = ["full"] }
|
|
rust_decimal = { version = "1.36", features = ["maths"] }
|
|
rust_decimal_macros = "1.36"
|
|
reqwest = { version = "0.12", features = ["json", "rustls-tls"], default-features = false }
|
|
rand = "0.8.5"
|
|
configure_me = "0.4.0"
|
|
futures = "0.3.32"
|
|
|
|
[build-dependencies]
|
|
configure_me_codegen = "0.4.8"
|
|
|
|
[dependencies.malachite]
|
|
version = "0.6.1"
|
|
default-features = false
|
|
features = [ "naturals_and_integers"]
|
|
|
|
[package.metadata.configure_me]
|
|
spec = "internal/config_specification.toml"
|
|
|
|
[profile.release]
|
|
debug = true
|
|
|
|
[lints.clippy]
|
|
# workaround for generated code in depdencendy configure_me
|
|
uninlined_format_args = "allow"
|