From 4da7cc7b1c6996fcbaf0017edb5d98096d7b948f Mon Sep 17 00:00:00 2001 From: phoenix Date: Tue, 21 Jul 2026 15:30:18 -0400 Subject: [PATCH] Dependency name change (#3) Reviewed-on: http://git.kundeng.us/phoenix/songparser/pulls/3 --- .env.docker.sample | 4 +- .env.local.sample | 4 +- .env.sample | 4 - .gitea/workflows/tag_release.yml | 2 +- .gitea/workflows/workflow.yml | 8 +- Cargo.lock | 158 +++++++++++++++---------------- Cargo.toml | 10 +- Dockerfile | 2 +- LICENSE.md | 21 ++++ README.md | 6 +- src/api.rs | 10 +- src/auth/mod.rs | 6 +- src/config.rs | 8 +- src/metadata/mod.rs | 76 +++++++-------- src/parser/mod.rs | 41 ++++---- src/queued_item.rs | 4 +- 16 files changed, 187 insertions(+), 177 deletions(-) delete mode 100644 .env.sample create mode 100644 LICENSE.md diff --git a/.env.docker.sample b/.env.docker.sample index 49b5838..1626171 100644 --- a/.env.docker.sample +++ b/.env.docker.sample @@ -1,4 +1,4 @@ ROOT_DIRECTORY=/usr/local/bin -ICARUS_BASE_API_URL=http://api:8000 -ICARUS_AUTH_BASE_API_URL=http://auth_api:8001 +SOARICARUS_BASE_API_URL=http://api:8000 +SOARICARUS_AUTH_BASE_API_URL=http://auth_api:8001 SERVICE_PASSPHRASE=iUOo1fxshf3y1tUGn1yU8l9raPApHCdinW0VdCHdRFEjqhR3Bf02aZzsKbLtaDFH diff --git a/.env.local.sample b/.env.local.sample index ea067e3..f8f142a 100644 --- a/.env.local.sample +++ b/.env.local.sample @@ -1,4 +1,4 @@ ROOT_DIRECTORY=/tmp -ICARUS_BASE_API_URL=http://localhost:8000 -ICARUS_AUTH_BASE_API_URL=http://localhost:8001 +SOARICARUS_BASE_API_URL=http://localhost:8000 +SOARICARUS_AUTH_BASE_API_URL=http://localhost:8001 SERVICE_PASSPHRASE=iUOo1fxshf3y1tUGn1yU8l9raPApHCdinW0VdCHdRFEjqhR3Bf02aZzsKbLtaDFH diff --git a/.env.sample b/.env.sample deleted file mode 100644 index f116df7..0000000 --- a/.env.sample +++ /dev/null @@ -1,4 +0,0 @@ -ROOT_DIRECTORY=/home/songparser/mydata -ICARUS_BASE_API_URL=http://localhost:3000 -ICARUS_AUTH_BASE_API_URL=http://localhost:3001 -SERVICE_PASSPHRASE=iUOo1fxshf3y1tUGn1yU8l9raPApHCdinW0VdCHdRFEjqhR3Bf02aZzsKbLtaDFH diff --git a/.gitea/workflows/tag_release.yml b/.gitea/workflows/tag_release.yml index b4b3596..a27bd29 100644 --- a/.gitea/workflows/tag_release.yml +++ b/.gitea/workflows/tag_release.yml @@ -17,7 +17,7 @@ jobs: - name: Install Rust uses: actions-rs/toolchain@v1 with: - toolchain: 1.96.1 + toolchain: 1.97 components: cargo - name: Extract Version from Cargo.toml diff --git a/.gitea/workflows/workflow.yml b/.gitea/workflows/workflow.yml index e5ae82e..70cffff 100644 --- a/.gitea/workflows/workflow.yml +++ b/.gitea/workflows/workflow.yml @@ -20,7 +20,7 @@ jobs: - uses: actions/checkout@v6 - uses: actions-rust-lang/setup-rust-toolchain@v1 with: - toolchain: 1.96.1 + toolchain: 1.97 - uses: Swatinem/rust-cache@v2 - run: | mkdir -p ~/.ssh @@ -39,7 +39,7 @@ jobs: - uses: actions/checkout@v6 - uses: actions-rust-lang/setup-rust-toolchain@v1 with: - toolchain: 1.96.1 + toolchain: 1.97 - uses: Swatinem/rust-cache@v2 - run: rustup component add rustfmt - run: | @@ -59,7 +59,7 @@ jobs: - uses: actions/checkout@v6 - uses: actions-rust-lang/setup-rust-toolchain@v1 with: - toolchain: 1.96.1 + toolchain: 1.97 - uses: Swatinem/rust-cache@v2 - run: rustup component add clippy - run: | @@ -79,7 +79,7 @@ jobs: - uses: actions/checkout@v6 - uses: actions-rust-lang/setup-rust-toolchain@v1 with: - toolchain: 1.96.1 + toolchain: 1.97 - uses: Swatinem/rust-cache@v2 - run: | mkdir -p ~/.ssh diff --git a/Cargo.lock b/Cargo.lock index 8b0b563..9fe63eb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -31,9 +31,9 @@ checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" [[package]] name = "aws-lc-rs" -version = "1.17.1" +version = "1.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4342d8937fc7e5dd9b1c60292261c0670c882a2cd1719cfc11b1af41731e32ad" +checksum = "00bdb5da18dac48ca2cc7cd4a98e533e8635a58e2361d13a1a4ee3888e0d72f1" dependencies = [ "aws-lc-sys", "zeroize", @@ -41,9 +41,9 @@ dependencies = [ [[package]] name = "aws-lc-sys" -version = "0.42.0" +version = "0.43.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d9ceb1da931507a12f4fccea479dccd00da1943e1b4ae72d8e502d707361444" +checksum = "43103168cc76fe62678a375e722fc9cb3a0146159ac5828bc4f0dfd755c2224c" dependencies = [ "cc", "cmake", @@ -60,9 +60,9 @@ checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" [[package]] name = "bitflags" -version = "2.13.0" +version = "2.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4388bee8683e3d04af747c73422af53102d2bd24d9eadb6cbc100baef4b43f8" +checksum = "b588b76d00fde79687d7646a9b5bdf3cc0f655e0bbd080335a95d7e96f3587da" [[package]] name = "bumpalo" @@ -78,15 +78,15 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.12.0" +version = "1.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae3f5d315924270530207e2a68396c3cc547f6dca3fbdca317cfb1a51edb593" +checksum = "fc652a48c352aef3ea3aed32080501cf3ef6ed5da78602a020c991775b0aff04" [[package]] name = "cc" -version = "1.2.66" +version = "1.2.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5d6cac793997bd970000024b2934968efe83b382de4fdcf4fcb46b6ee4ad996" +checksum = "e17dd265a7d0f31ef544e1b20e03add05d3b45b491b633b10d67145d2acc1a38" dependencies = [ "find-msvc-tools", "jobserver", @@ -113,9 +113,9 @@ checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" [[package]] name = "cfg_aliases" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" +checksum = "f079e83a288787bcd14a6aea84cee5c87a67c5a3e660c30f557a3d24761b3527" [[package]] name = "chacha20" @@ -479,9 +479,9 @@ dependencies = [ [[package]] name = "http-body" -version = "1.0.1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" +checksum = "ca2a8f2913ee65f60facd6a5905613afaa448497a0230cc41ce022d93290bc2c" dependencies = [ "bytes", "http", @@ -489,9 +489,9 @@ dependencies = [ [[package]] name = "http-body-util" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a" +checksum = "e9f41fd6a08e4d4ec69df65976da761afd5ad5e58a9d4acb46bd1c953a9e3ff2" dependencies = [ "bytes", "futures-core", @@ -567,40 +567,6 @@ dependencies = [ "windows-registry", ] -[[package]] -name = "icarus_envy" -version = "0.8.0" -source = "git+ssh://git@git.kundeng.us/phoenix/icarus_envy.git?tag=v0.8.0#349056db6e6254c2eb778fdcdd1d64de339f1309" -dependencies = [ - "const_format", - "dotenvy", -] - -[[package]] -name = "icarus_meta" -version = "0.6.1" -source = "git+ssh://git@git.kundeng.us/phoenix/icarus_meta.git?tag=v0.6.1#946c46a23b387323c20720cd78bbac3c34595854" -dependencies = [ - "imghdr", - "infer", - "lofty", - "rand", -] - -[[package]] -name = "icarus_models" -version = "0.11.3" -source = "git+ssh://git@git.kundeng.us/phoenix/icarus_models.git?tag=v0.11.3#859b0fb1b377370d8171e22e59893d86e41b258b" -dependencies = [ - "josekit", - "rand", - "serde", - "serde_json", - "time", - "utoipa", - "uuid", -] - [[package]] name = "icu_collections" version = "2.2.0" @@ -938,9 +904,9 @@ dependencies = [ [[package]] name = "mio" -version = "1.2.1" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02bd0af71c67b473010cbbc60715ee815645a4dc942899111f494b4b737d6fda" +checksum = "30d65c71f1ce40ab09135ce117d742b9f8a19ff91a41a8b57ed50bc2de59c427" dependencies = [ "libc", "wasi", @@ -1201,9 +1167,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.12.4" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1292b7759ae1cb9ec195452d1390a074f0cd8541ab7a5a8c31cd6db45d4a6ba" +checksum = "f020237b6c8eed93db2e2cb53c00c60a8e1bc73da7d073199a1180401450218d" dependencies = [ "aho-corasick", "memchr", @@ -1213,9 +1179,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.14" +version = "0.4.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f" +checksum = "8fcfdb36bda0c880c5931cdc7a2bcdc8ba4556847b9d912bca70bc94708711ad" dependencies = [ "aho-corasick", "memchr", @@ -1303,9 +1269,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.41" +version = "0.23.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b92b125634d9b795e7beca796cc790df15a7fb38323bf3196fda83292d06b1f" +checksum = "3c54fcab019b409d04215d3a17cb438fd7fbf192ee61461f20f4fe18704bc138" dependencies = [ "aws-lc-rs", "once_cell", @@ -1485,6 +1451,15 @@ version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba" +[[package]] +name = "sienvy" +version = "0.8.0" +source = "git+ssh://git@git.kundeng.us/phoenix/sienvy.git?tag=v0.8.0-main-d06c8fdf49-006#d06c8fdf49920cf4d8ba0487c20f5bdc851c36de" +dependencies = [ + "const_format", + "dotenvy", +] + [[package]] name = "signal-hook-registry" version = "1.4.8" @@ -1497,15 +1472,15 @@ dependencies = [ [[package]] name = "simd-adler32" -version = "0.3.9" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "703d5c7ef118737c72f1af64ad2f6f8c5e1921f818cdcb97b8fe6fc69bf66214" +checksum = "3a219298ac11a56ea9a6d2120044824d6f01aeb034955e7af7bc16858527deea" [[package]] name = "simd_cesu8" -version = "1.1.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94f90157bb87cddf702797c5dadfa0be7d266cdf49e22da2fcaa32eff75b2c33" +checksum = "11031e251abf8611c80f460e19dbdeb54a66db918e49c65a7065b46ac7aec520" dependencies = [ "rustc_version", "simdutf8", @@ -1517,6 +1492,31 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" +[[package]] +name = "simeta" +version = "0.6.1" +source = "git+ssh://git@git.kundeng.us/phoenix/simeta.git?tag=v0.6.1-main-b690995806-680#b6909958064b1a3a4bffd6cbc0f6e12b95477e68" +dependencies = [ + "imghdr", + "infer", + "lofty", + "rand", +] + +[[package]] +name = "simodels" +version = "0.11.3" +source = "git+ssh://git@git.kundeng.us/phoenix/simodels.git?tag=v0.11.3-main-fe9d101bd0-111#fe9d101bd019f91fe8c99c29721ccb0e6e90c92c" +dependencies = [ + "josekit", + "rand", + "serde", + "serde_json", + "time", + "utoipa", + "uuid", +] + [[package]] name = "slab" version = "0.4.12" @@ -1531,9 +1531,9 @@ checksum = "8ed6a63f02c8539c91a8685a86f4099661ba3da017932f6ebbea6de3f0fa7c90" [[package]] name = "socket2" -version = "0.6.4" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52d1cfed4120b4d927bf7c0f86d2087a4a7d6027c906d9f9d525a80573b9be51" +checksum = "c3d1e2c7f27f8d4cb10542a02c49005dbd6e93095799d6f3be745fae9f8fedd4" dependencies = [ "libc", "windows-sys 0.61.2", @@ -1544,13 +1544,13 @@ name = "songparser" version = "0.6.1" dependencies = [ "futures", - "icarus_envy", - "icarus_meta", - "icarus_models", "openssl", "reqwest", "serde", "serde_json", + "sienvy", + "simeta", + "simodels", "time", "tokio", "uuid", @@ -1570,9 +1570,9 @@ checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "syn" -version = "2.0.118" +version = "2.0.119" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9ae57f904213ebb649ce6895b8a66c66f0203b9319718f69a5612a065b1422" +checksum = "872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297" dependencies = [ "proc-macro2", "quote", @@ -1682,9 +1682,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.11.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e61e67053d25a4e82c844e8424039d9745781b3fc4f32b8d55ed50f5f667ef3" +checksum = "bb4ebadaa0af04fab11ae01eb5f9fdb5f9c5b875506e210e71c07873528baa7f" dependencies = [ "tinyvec_macros", ] @@ -1697,9 +1697,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.52.3" +version = "1.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fc7f01b389ac15039e4dc9531aa973a135d7a4135281b12d7c1bc79fd57fffe" +checksum = "d988bcd52dbe076d3d46903332f58c912b87a2c49b1428419a5845154762ffee" dependencies = [ "bytes", "libc", @@ -1714,9 +1714,9 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "2.7.0" +version = "2.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "385a6cb71ab9ab790c5fe8d67f1645e6c450a7ce006a33de03daa956cf70a496" +checksum = "6328af13490e73a9b4694030fafd93f8c8c6a9dede33e821c3fc63eddf8042ba" dependencies = [ "proc-macro2", "quote", @@ -1884,9 +1884,9 @@ dependencies = [ [[package]] name = "uuid" -version = "1.23.4" +version = "1.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf80a72845275afea99e7f2b434723d3bc7e38470fcd1c7ed39a599c73319a53" +checksum = "bf3923a6f5c4c6382e0b653c4117f48d631ea17f38ed86e2a828e6f7412f5239" dependencies = [ "getrandom 0.4.3", "js-sys", @@ -2239,6 +2239,6 @@ dependencies = [ [[package]] name = "zmij" -version = "1.0.21" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" +checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b" diff --git a/Cargo.toml b/Cargo.toml index c79e2c4..5eab27f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,6 +3,8 @@ name = "songparser" version = "0.6.1" edition = "2024" rust-version = "1.95" +license = "MIT" +description = "Service to parse songs queued for processing" [dependencies] tokio = { version = "1.52.3", features = ["full"] } @@ -12,7 +14,7 @@ openssl = { version = "0.10.81", features = ["vendored"] } serde = { version = "1.0.228", features = ["derive"] } serde_json = { version = "1.0.150" } time = { version = "0.3.53", features = ["macros", "serde"] } -uuid = { version = "1.23.4", features = ["v4", "serde"] } -icarus_meta = { git = "ssh://git@git.kundeng.us/phoenix/icarus_meta.git", tag = "v0.6.1" } -icarus_models = { git = "ssh://git@git.kundeng.us/phoenix/icarus_models.git", tag = "v0.11.3" } -icarus_envy = { git = "ssh://git@git.kundeng.us/phoenix/icarus_envy.git", tag = "v0.8.0" } +uuid = { version = "1.23.5", features = ["v4", "serde"] } +simeta = { git = "ssh://git@git.kundeng.us/phoenix/simeta.git", tag = "v0.6.1-main-b690995806-680" } +simodels = { git = "ssh://git@git.kundeng.us/phoenix/simodels.git", tag = "v0.11.3-main-fe9d101bd0-111" } +sienvy = { git = "ssh://git@git.kundeng.us/phoenix/sienvy.git", tag = "v0.8.0-main-d06c8fdf49-006" } diff --git a/Dockerfile b/Dockerfile index 8dcefc2..f605eef 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM rust:1.96.1 as builder +FROM rust:1.97 as builder WORKDIR /usr/src/app diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..c46460b --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 Kun Deng + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index f3ff5af..4c42480 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Songparser +# songparser A service that edits the metadata of a queued song and populates it with data. @@ -11,10 +11,10 @@ it can be changed. The `SERVICE_PASSPHRASE` env variable should not be changed, but it could be changed. The value for this variable should match the value in the `passphrase` table. This would be -found in the `icarus_auth` project. +found in the `soaricarus_auth` project. Ensure that the URLs for the two APIs are correctly set for the respective env variables -`ICARUS_BASE_API_URL` for Icarus API and `ICARUS_AUTH_BASE_API_URL` for `icarus_auth`. +`SOARICARUS_BASE_API_URL` for soaricarus API and `SOARICARUS_AUTH_BASE_API_URL` for `soaricarus_auth`. If the values are properly set, next is to build the image. The docker image should be built from the main icarus web API. diff --git a/src/api.rs b/src/api.rs index 32ccc8c..f1fdeda 100644 --- a/src/api.rs +++ b/src/api.rs @@ -162,7 +162,7 @@ pub mod service_token { #[derive(Debug, serde::Deserialize, serde::Serialize)] pub struct Response { pub message: String, - pub data: Vec, + pub data: Vec, } } } @@ -172,7 +172,7 @@ pub mod refresh_token { #[derive(Debug, serde::Deserialize, serde::Serialize)] pub struct Response { pub message: String, - pub data: Vec, + pub data: Vec, } } } @@ -253,7 +253,7 @@ pub mod create_song { #[derive(Debug, serde::Deserialize, serde::Serialize)] pub struct Response { pub message: String, - pub data: Vec, + pub data: Vec, } } } @@ -261,7 +261,7 @@ pub mod create_song { pub mod create_coverart { pub async fn create( app: &crate::config::App, - song: &icarus_models::song::Song, + song: &simodels::song::Song, queued_coverart: &crate::queued_item::QueuedCoverArt, ) -> Result { let client = reqwest::Client::builder().build()?; @@ -284,7 +284,7 @@ pub mod create_coverart { #[derive(Debug, serde::Deserialize, serde::Serialize)] pub struct Response { pub message: String, - pub data: Vec, + pub data: Vec, } } } diff --git a/src/auth/mod.rs b/src/auth/mod.rs index 15153cb..1359856 100644 --- a/src/auth/mod.rs +++ b/src/auth/mod.rs @@ -1,12 +1,12 @@ pub async fn get_token( app: &crate::config::App, -) -> Result { +) -> Result { let client = reqwest::Client::new(); let endpoint = String::from("api/v2/service/login"); let api_url = format!("{}/{endpoint}", app.auth_uri); let payload = serde_json::json!({ - "passphrase": icarus_envy::environment::get_service_passphrase().value, + "passphrase": sienvy::environment::get_service_passphrase().value, }); match client.post(api_url).json(&payload).send().await { @@ -29,7 +29,7 @@ pub async fn get_token( pub async fn get_refresh_token( app: &crate::config::App, -) -> Result { +) -> Result { let client = reqwest::Client::new(); let endpoint = String::from("api/v2/token/refresh"); let api_url = format!("{}/{endpoint}", app.auth_uri); diff --git a/src/config.rs b/src/config.rs index ed66cd1..94b423e 100644 --- a/src/config.rs +++ b/src/config.rs @@ -2,7 +2,7 @@ pub struct App { pub uri: String, pub auth_uri: String, - pub token: icarus_models::login_result::LoginResult, + pub token: simodels::login_result::LoginResult, pub root_directory: String, } @@ -15,9 +15,9 @@ impl App { pub async fn initialize_app_config() -> App { App { - uri: icarus_envy::environment::get_icarus_base_api_url().value, - auth_uri: icarus_envy::environment::get_icarus_auth_base_api_url().value, - root_directory: icarus_envy::environment::get_root_directory().value, + uri: sienvy::environment::get_soaricarus_base_api_url().value, + auth_uri: sienvy::environment::get_soaricarus_auth_base_api_url().value, + root_directory: sienvy::environment::get_root_directory().value, ..Default::default() } } diff --git a/src/metadata/mod.rs b/src/metadata/mod.rs index 87283d6..2369fae 100644 --- a/src/metadata/mod.rs +++ b/src/metadata/mod.rs @@ -5,101 +5,96 @@ pub async fn apply_metadata( metadata: &crate::api::get_metadata_queue::response::Metadata, ) -> Result { // Apply metadata fields - let types = icarus_meta::types::all_metadata_types(); + let types = simeta::types::all_metadata_types(); for t in types { match t { - icarus_meta::types::Type::Album => { - let meta_type = - icarus_meta::types::MetadataType::from_string(metadata.album.clone()); - match icarus_meta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { + simeta::types::Type::Album => { + let meta_type = simeta::types::MetadataType::from_string(metadata.album.clone()); + match simeta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { Ok(_) => {} Err(_err) => { return Err(_err); } } } - icarus_meta::types::Type::AlbumArtist => { + simeta::types::Type::AlbumArtist => { let meta_type = - icarus_meta::types::MetadataType::from_string(metadata.album_artist.clone()); - match icarus_meta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { + simeta::types::MetadataType::from_string(metadata.album_artist.clone()); + match simeta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { Ok(_) => {} Err(_err) => { return Err(_err); } } } - icarus_meta::types::Type::Artist => { - let meta_type = - icarus_meta::types::MetadataType::from_string(metadata.artist.clone()); - match icarus_meta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { + simeta::types::Type::Artist => { + let meta_type = simeta::types::MetadataType::from_string(metadata.artist.clone()); + match simeta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { Ok(_) => {} Err(_err) => { return Err(_err); } } } - icarus_meta::types::Type::Date => { + simeta::types::Type::Date => { // TODO: Do something about this discrepancy - let meta_type = - icarus_meta::types::MetadataType::from_string(metadata.year.to_string()); - match icarus_meta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { + let meta_type = simeta::types::MetadataType::from_string(metadata.year.to_string()); + match simeta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { Ok(_) => {} Err(_err) => { return Err(_err); } } } - icarus_meta::types::Type::Disc => { - let meta_type = icarus_meta::types::MetadataType::from_int(metadata.disc); - match icarus_meta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { + simeta::types::Type::Disc => { + let meta_type = simeta::types::MetadataType::from_int(metadata.disc); + match simeta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { Ok(_) => {} Err(_err) => { return Err(_err); } } } - icarus_meta::types::Type::Genre => { - let meta_type = - icarus_meta::types::MetadataType::from_string(metadata.genre.clone()); - match icarus_meta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { + simeta::types::Type::Genre => { + let meta_type = simeta::types::MetadataType::from_string(metadata.genre.clone()); + match simeta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { Ok(_) => {} Err(_err) => { return Err(_err); } } } - icarus_meta::types::Type::Title => { - let meta_type = - icarus_meta::types::MetadataType::from_string(metadata.title.clone()); - match icarus_meta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { + simeta::types::Type::Title => { + let meta_type = simeta::types::MetadataType::from_string(metadata.title.clone()); + match simeta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { Ok(_) => {} Err(_err) => { return Err(_err); } } } - icarus_meta::types::Type::Track => { - let meta_type = icarus_meta::types::MetadataType::from_int(metadata.track); - match icarus_meta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { + simeta::types::Type::Track => { + let meta_type = simeta::types::MetadataType::from_int(metadata.track); + match simeta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { Ok(_) => {} Err(_err) => { return Err(_err); } } } - icarus_meta::types::Type::TrackCount => { - let meta_type = icarus_meta::types::MetadataType::from_int(metadata.track_count); - match icarus_meta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { + simeta::types::Type::TrackCount => { + let meta_type = simeta::types::MetadataType::from_int(metadata.track_count); + match simeta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { Ok(_) => {} Err(_err) => { return Err(_err); } } } - icarus_meta::types::Type::DiscCount => { - let meta_type = icarus_meta::types::MetadataType::from_int(metadata.disc_count); - match icarus_meta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { + simeta::types::Type::DiscCount => { + let meta_type = simeta::types::MetadataType::from_int(metadata.disc_count); + match simeta::meta::metadata::set_meta_value(t, &queued_song.path, meta_type) { Ok(_) => {} Err(_err) => { return Err(_err); @@ -110,11 +105,11 @@ pub async fn apply_metadata( } // Apply coverart - match icarus_meta::meta::coverart::contains_coverart(&queued_song.path) { + match simeta::meta::coverart::contains_coverart(&queued_song.path) { Ok((exists, size)) => { if exists { println!("Coverart exists: {size:?} size"); - match icarus_meta::meta::coverart::remove_coverart(&queued_song.path) { + match simeta::meta::coverart::remove_coverart(&queued_song.path) { Ok(_data) => {} Err(err) => { return Err(err); @@ -122,10 +117,7 @@ pub async fn apply_metadata( } } - match icarus_meta::meta::coverart::set_coverart( - &queued_song.path, - &queued_coverart.path, - ) { + match simeta::meta::coverart::set_coverart(&queued_song.path, &queued_coverart.path) { Ok(_data) => { if _data.is_empty() { println!("There was an issue"); diff --git a/src/parser/mod.rs b/src/parser/mod.rs index 7b8ad8d..84f5978 100644 --- a/src/parser/mod.rs +++ b/src/parser/mod.rs @@ -4,8 +4,8 @@ pub async fn some_work( user_id: &uuid::Uuid, ) -> Result< ( - icarus_models::song::Song, - icarus_models::coverart::CoverArt, + simodels::song::Song, + simodels::coverart::CoverArt, crate::api::get_metadata_queue::response::Metadata, crate::queued_item::QueuedSong, crate::queued_item::QueuedCoverArt, @@ -30,9 +30,8 @@ pub async fn some_work( println!("Updated queued song"); println!("Response: {_inner_response:?}"); - let song_type = String::from( - icarus_meta::detection::song::constants::FLAC_TYPE, - ); + let song_type = + String::from(simeta::detection::song::constants::FLAC_TYPE); match crate::api::create_song::create( app, &metadata, user_id, &song_type, @@ -104,10 +103,10 @@ pub async fn prep_song( // Process data here... match crate::api::parsing::parse_response_into_bytes(response).await { Ok(song_bytes) => { - let song = icarus_models::song::Song { - directory: icarus_envy::environment::get_root_directory().value, - filename: icarus_models::song::generate_filename( - icarus_models::types::MusicType::FlacExtension, + let song = simodels::song::Song { + directory: sienvy::environment::get_root_directory().value, + filename: simodels::song::generate_filename( + simodels::types::MusicType::FlacExtension, true, ) .unwrap(), @@ -223,18 +222,18 @@ async fn init_queued_coverart( bytes: Vec, ) -> crate::queued_item::QueuedCoverArt { // TODO: Consider separating song and coverart when saving to the filesystem - let covart_type = if file_type == icarus_meta::detection::coverart::constants::PNG_TYPE { - icarus_models::types::CoverArtType::PngExtension - } else if file_type == icarus_meta::detection::coverart::constants::JPEG_TYPE { - icarus_models::types::CoverArtType::JpegExtension - } else if file_type == icarus_meta::detection::coverart::constants::JPG_TYPE { - icarus_models::types::CoverArtType::JpgExtension + let covart_type = if file_type == simeta::detection::coverart::constants::PNG_TYPE { + simodels::types::CoverArtType::PngExtension + } else if file_type == simeta::detection::coverart::constants::JPEG_TYPE { + simodels::types::CoverArtType::JpegExtension + } else if file_type == simeta::detection::coverart::constants::JPG_TYPE { + simodels::types::CoverArtType::JpgExtension } else { - icarus_models::types::CoverArtType::None + simodels::types::CoverArtType::None }; - let coverart = icarus_models::coverart::CoverArt { - directory: icarus_envy::environment::get_root_directory().value, - filename: match icarus_models::coverart::generate_filename(covart_type, true) { + let coverart = simodels::coverart::CoverArt { + directory: sienvy::environment::get_root_directory().value, + filename: match simodels::coverart::generate_filename(covart_type, true) { Ok(filename) => filename, Err(err) => { eprintln!("Error generating CoverArt filename: {err:?}"); @@ -255,8 +254,8 @@ async fn init_queued_coverart( } pub async fn cleanup( - song: &icarus_models::song::Song, - coverart: &icarus_models::coverart::CoverArt, + song: &simodels::song::Song, + coverart: &simodels::coverart::CoverArt, ) -> Result<(), std::io::Error> { match song.remove_from_filesystem() { Ok(_) => {} diff --git a/src/queued_item.rs b/src/queued_item.rs index 3c4e13b..f4026a9 100644 --- a/src/queued_item.rs +++ b/src/queued_item.rs @@ -1,13 +1,13 @@ #[derive(Clone, Debug, Default)] pub struct QueuedSong { pub id: uuid::Uuid, - pub song: icarus_models::song::Song, + pub song: simodels::song::Song, pub path: String, } #[derive(Clone, Debug, Default)] pub struct QueuedCoverArt { pub id: uuid::Uuid, - pub coverart: icarus_models::coverart::CoverArt, + pub coverart: simodels::coverart::CoverArt, pub path: String, }