Compare commits
2 Commits
7961a79751
...
029e45aee8
Author | SHA1 | Date | |
---|---|---|---|
029e45aee8 | |||
2ee0620d23 |
599
Cargo.lock
generated
599
Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
12
Cargo.toml
12
Cargo.toml
@ -5,7 +5,7 @@ edition = "2021"
|
||||
|
||||
[dependencies]
|
||||
axum = {version = "0.6", features = ["ws", "headers"]}
|
||||
axum-server = {version = "0.4", features = ["tls-rustls"]}
|
||||
axum-server = {version = "0.5", features = ["tls-rustls"]}
|
||||
tokio = {version = "1", features = ["rt-multi-thread"]}
|
||||
dotenvy = "0.15"
|
||||
tracing = "0.1"
|
||||
@ -13,13 +13,13 @@ tracing-subscriber = {version = "0.3", features = ["env-filter"]}
|
||||
tower-http = {version = "0.4", features = ["trace", "cors", "sensitive-headers", "request-id"]}
|
||||
hyper = {version = "0.14", features = ["client"]}
|
||||
http = "0.2"
|
||||
async-tungstenite = {version = "0.21", features = ["tokio-runtime"]}
|
||||
axum-tungstenite = {package = "tungstenite", version = "0.18"}
|
||||
async-tungstenite = {version = "0.23", features = ["tokio-runtime"]}
|
||||
axum-tungstenite = {package = "tungstenite", version = "0.20"}
|
||||
futures = {version = "0.3"}
|
||||
serde = {version = "1", features = ["derive"]}
|
||||
serde_json = "1"
|
||||
rust-argon2 = "1.0"
|
||||
rust-argon2 = "2.0"
|
||||
rand = "0.8"
|
||||
scc = "1"
|
||||
scc = "2"
|
||||
base64 = "0.21"
|
||||
serde_qs = "0.12"
|
||||
serde_qs = "0.12"
|
||||
|
15
src/state.rs
15
src/state.rs
@ -53,13 +53,20 @@ impl AppStateInternal {
|
||||
let tokens_path = get_conf("TOKENS_FILE")?;
|
||||
|
||||
let music_info = MusicInfoMap::new();
|
||||
music_info
|
||||
.read(
|
||||
musikcubed_password.clone(),
|
||||
let fetch_music_info = || {
|
||||
music_info.read(
|
||||
&musikcubed_password,
|
||||
&musikcubed_address,
|
||||
musikcubed_metadata_port,
|
||||
)
|
||||
.await?;
|
||||
};
|
||||
let mut result = fetch_music_info().await;
|
||||
while let Err(err) = result {
|
||||
tracing::error!("error while trying to fetch music metadata from musikcubed: {err}");
|
||||
tracing::info!("trying again in 5 seconds...");
|
||||
tokio::time::sleep(std::time::Duration::from_secs(5)).await;
|
||||
result = fetch_music_info().await;
|
||||
}
|
||||
|
||||
let this = Self {
|
||||
client: Client::new(),
|
||||
|
@ -56,7 +56,7 @@ impl Tokens {
|
||||
pub async fn write(&self, path: impl AsRef<Path>) -> Result<(), AppError> {
|
||||
let mut contents = String::new();
|
||||
self.hashed
|
||||
.for_each_async(|hash| {
|
||||
.scan_async(|hash| {
|
||||
writeln!(&mut contents, "{hash}").expect("if this fails then too bad")
|
||||
})
|
||||
.await;
|
||||
|
Loading…
Reference in New Issue
Block a user