mirror of
https://github.com/storytold/artcraft.git
synced 2026-11-10 12:01:36 +00:00
The reason this is so labyrinthine is because of the users and billing components. They bind dynamic behaviors that are defined in storyteller-web (one of them being clearing the redis session cache). Actually, the users component _didn't_, because it was defined in the billing component. So I hoisted it out into a new component library. In the fullness of time I imagine all of this will be consolidated back under storyteller-web so we don't have to worry about binding actions at a distance. Anyway, this is tested and works locally.
72 lines
2.0 KiB
TOML
72 lines
2.0 KiB
TOML
[package]
|
|
publish = false
|
|
name = "users_component"
|
|
edition = "2018"
|
|
version = "0.0.1"
|
|
authors = [
|
|
"Brandon Thomas <bt@brand.io>",
|
|
"Brandon Thomas <echelon@gmail.com>",
|
|
]
|
|
|
|
[lib]
|
|
name = "users_component"
|
|
path = "src/lib.rs"
|
|
|
|
[dependencies]
|
|
|
|
# Internal
|
|
container_common = { path = "../../../lib/deprecated/container_common" }
|
|
cookies = { path = "../../../lib/cookies" }
|
|
crockford = { path = "../../../lib/crockford" }
|
|
email_sender = { path = "../../../lib/email_sender" }
|
|
enums = { path = "../../../_types/enums" }
|
|
errors = { path = "../../../lib/errors" }
|
|
http_server_common = { path = "../../../lib/deprecated/http_server_common" }
|
|
mysql_queries = { path = "../../../lib/mysql_queries" }
|
|
password = { path = "../../../lib/password" }
|
|
redis_caching = { path = "../../../lib/caching/redis_caching" }
|
|
redis_common = { path = "../../../lib/redis_common" }
|
|
reusable_types = { path = "../../../_types/reusable_types" }
|
|
server_environment = { path = "../../../lib/server_environment" }
|
|
tokens = { path = "../../../_types/tokens" }
|
|
user_input_common = { path = "../../../lib/user_input_common" }
|
|
user_traits_component = { path = "../user_traits_component" }
|
|
|
|
# Workspace hack (faster compile times)
|
|
my-workspace-hack = { version = "0.1", path = "../../../my-workspace-hack" }
|
|
|
|
# External
|
|
anyhow = "1.0.75"
|
|
base64 = "0.21.0"
|
|
chrono = { version = "0.4.22", features = ["serde"] }
|
|
dotenv = "0.15.0"
|
|
lazy_static = "1.4.0" # Regex caching (TODO: Use OnceCell instead)
|
|
log = "0.4.14"
|
|
once_cell = "1.18.0"
|
|
rand = "0.8.5"
|
|
regex = "1.5.4"
|
|
time = "0.3.30"
|
|
|
|
# Web
|
|
actix-web = "4.4.0"
|
|
jwt = "0.13.0"
|
|
|
|
# Crypto
|
|
hmac = "0.10.0" # cookies
|
|
md-5 = "0.9.1" # gravatar
|
|
sha2 = "0.9.5" # file hashes, inference text hashes, etc.
|
|
|
|
# Serialization
|
|
serde = "1.0.125"
|
|
serde_derive = "1.0.125"
|
|
serde_json = "1.0.108"
|
|
toml = "0.5.8"
|
|
|
|
sqlx = { version = "0.7.2", features = [ "mysql", "runtime-tokio", "tls-rustls", "chrono" ] }
|
|
|
|
# TODO: Shouldn't really be a dependency, but need to add caching for the DDoS attack.
|
|
# Redis Database
|
|
r2d2_redis = "0.14.0"
|
|
byteorder = "1.5.0"
|
|
strum_macros = "0.25.3"
|