fedimovies/Cargo.toml

91 lines
3.1 KiB
TOML
Raw Normal View History

2021-04-09 00:22:17 +00:00
[package]
name = "mitra"
version = "0.4.0"
2021-04-09 00:22:17 +00:00
description = "Mitra backend"
license = "AGPL-3.0"
edition = "2018"
rust-version = "1.51"
2021-04-09 00:22:17 +00:00
publish = false
default-run = "mitra"
[dependencies]
# Used to handle incoming HTTP requests
actix-cors = "0.5.4"
actix-files = "0.5.0"
2021-12-19 16:52:59 +00:00
actix-web = "3.3.3"
2021-10-01 00:35:52 +00:00
actix-web-httpauth = "0.5.1"
2021-04-09 00:22:17 +00:00
# Used for managing async tasks
actix-rt = "1.1.1"
# Used for HTML sanitization
ammonia = "3.1.2"
# Used for working with RSA keys, HTTP signatures and file uploads
base64 = "0.13.0"
# Used for working with dates
chrono = { version = "0.4.19", features = ["serde"] }
# Used to build admin CLI tool
# Versions greater than beta.2 require Rust 1.54
2021-04-09 00:22:17 +00:00
clap = { version = "3.0.0-beta.2", default-features = false, features = ["std", "derive"] }
2021-11-20 22:04:19 +00:00
# Used for pooling database connections (compatible with tokio 0.2)
deadpool = "0.5.2"
2021-04-09 00:22:17 +00:00
deadpool-postgres = { version = "0.5.6", default-features = false }
# Used to read .env files
dotenv = "0.15.0"
# Used to work with hexadecimal strings
hex = "0.4.3"
# Used for logging
log = { version = "0.4.14", features = ["serde"] }
env_logger = { version = "0.9.0", default-features = false }
2021-04-09 00:22:17 +00:00
# Used to guess media type of a file
mime_guess = "2.0.3"
mime-sniffer = "0.1.2"
# Used to determine the number of CPUs on the system
num_cpus = "1.13.0"
# Used for working with regular expressions
regex = "1.5.4"
# Used to generate random numbers
2022-02-09 00:09:08 +00:00
rand = "0.8.4"
2021-04-09 00:22:17 +00:00
# Used for managing database migrations
refinery = { version = "0.4.0", features = ["tokio-postgres"] }
# Used for making async HTTP requests
reqwest = { version = "0.10.10", features = ["json"] }
# Used for working with RSA keys
rsa = "0.5.0"
pem = "1.0.2"
2021-04-09 00:22:17 +00:00
# Used for hashing passwords
rust-argon2 = "0.8.3"
# Used for working with ethereum keys
secp256k1 = { version = "0.20.3", features = ["rand", "rand-std"] }
# Used for serialization/deserialization
# https://github.com/rust-db/refinery/issues/160
serde = { version = "=1.0.117", features = ["derive"] }
serde_json = "1.0"
# Used to parse config file
serde_yaml = "0.8.17"
# Used to calculate SHA2 hashes
sha2 = "0.9.5"
2022-02-09 00:09:08 +00:00
# Used to verify EIP-4361 signatures
siwe = { git = "https://github.com/silverpill/siwe-rs", branch = "edition2018" }
2021-04-09 00:22:17 +00:00
# Used for creating error types
thiserror = "1.0.24"
# Async runtime ( required for #[tokio::main] )
tokio = { version = "0.2.25", features = ["macros"] }
# Used for working with Postgresql database (compatible with tokio 0.2)
tokio-postgres = { version = "0.5.5", features = ["with-chrono-0_4", "with-uuid-0_8", "with-serde_json-1"] }
postgres-types = { version = "0.1.2", features = ["derive", "with-chrono-0_4", "with-uuid-0_8", "with-serde_json-1"] }
postgres-protocol = "0.5.3"
2022-01-07 16:33:23 +00:00
# Used to construct PostgreSQL queries
postgres_query = "0.3.3"
postgres_query_macro = "0.3.1"
2021-04-09 00:22:17 +00:00
# Used to work with URLs
url = "2.2.2"
# Used to generate lexicographically sortable IDs
ulid = { version = "0.4.1", features = ["uuid"] }
2021-04-09 00:22:17 +00:00
# Used to work with UUIDs
uuid = { version = "0.8.2", features = ["serde", "v4"] }
# Used to query ethereum node
web3 = { version = "0.15.0", default-features = false, features = ["http", "http-tls", "signing"] }
2022-01-06 11:09:45 +00:00
[dev-dependencies]
serial_test = "0.5.1"