CLI utility to ingest embedded json metadata from yt-dlp downloads to a SQLite database file
yt-dlp
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix: Update dependencies and minor maintenance

0xBA5E64 1ec827a6 428931de

+64 -42
+57 -35
Cargo.lock
··· 4 4 5 5 [[package]] 6 6 name = "anstream" 7 - version = "0.6.18" 7 + version = "1.0.0" 8 8 source = "registry+https://github.com/rust-lang/crates.io-index" 9 - checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b" 9 + checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d" 10 10 dependencies = [ 11 11 "anstyle", 12 12 "anstyle-parse", ··· 19 19 20 20 [[package]] 21 21 name = "anstyle" 22 - version = "1.0.10" 22 + version = "1.0.14" 23 23 source = "registry+https://github.com/rust-lang/crates.io-index" 24 - checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" 24 + checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000" 25 25 26 26 [[package]] 27 27 name = "anstyle-parse" 28 - version = "0.2.6" 28 + version = "1.0.0" 29 29 source = "registry+https://github.com/rust-lang/crates.io-index" 30 - checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" 30 + checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e" 31 31 dependencies = [ 32 32 "utf8parse", 33 33 ] ··· 53 53 54 54 [[package]] 55 55 name = "bitstream-io" 56 - version = "2.6.0" 56 + version = "3.2.0" 57 57 source = "registry+https://github.com/rust-lang/crates.io-index" 58 - checksum = "6099cdc01846bc367c4e7dd630dc5966dccf36b652fae7a74e17b640411a91b2" 58 + checksum = "680575de65ce8b916b82a447458b94a48776707d9c2681a9d8da351c06886a1f" 59 + dependencies = [ 60 + "core2", 61 + ] 59 62 60 63 [[package]] 61 64 name = "clap" 62 - version = "4.5.21" 65 + version = "4.6.0" 63 66 source = "registry+https://github.com/rust-lang/crates.io-index" 64 - checksum = "fb3b4b9e5a7c7514dfa52869339ee98b3156b0bfb4e8a77c4ff4babb64b1604f" 67 + checksum = "b193af5b67834b676abd72466a96c1024e6a6ad978a1f484bd90b85c94041351" 65 68 dependencies = [ 66 69 "clap_builder", 67 70 "clap_derive", ··· 69 72 70 73 [[package]] 71 74 name = "clap_builder" 72 - version = "4.5.21" 75 + version = "4.6.0" 73 76 source = "registry+https://github.com/rust-lang/crates.io-index" 74 - checksum = "b17a95aa67cc7b5ebd32aa5370189aa0d79069ef1c64ce893bd30fb24bff20ec" 77 + checksum = "714a53001bf66416adb0e2ef5ac857140e7dc3a0c48fb28b2f10762fc4b5069f" 75 78 dependencies = [ 76 79 "anstream", 77 80 "anstyle", ··· 81 84 82 85 [[package]] 83 86 name = "clap_derive" 84 - version = "4.5.18" 87 + version = "4.6.0" 85 88 source = "registry+https://github.com/rust-lang/crates.io-index" 86 - checksum = "4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab" 89 + checksum = "1110bd8a634a1ab8cb04345d8d878267d57c3cf1b38d91b71af6686408bbca6a" 87 90 dependencies = [ 88 91 "heck", 89 92 "proc-macro2", ··· 93 96 94 97 [[package]] 95 98 name = "clap_lex" 96 - version = "0.7.3" 99 + version = "1.1.0" 97 100 source = "registry+https://github.com/rust-lang/crates.io-index" 98 - checksum = "afb84c814227b90d6895e01398aee0d8033c00e7466aca416fb6a8e0eb19d8a7" 101 + checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9" 99 102 100 103 [[package]] 101 104 name = "colorchoice" ··· 104 107 checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" 105 108 106 109 [[package]] 110 + name = "core2" 111 + version = "0.4.0" 112 + source = "registry+https://github.com/rust-lang/crates.io-index" 113 + checksum = "b49ba7ef1ad6107f8824dbe97de947cbaac53c44e7f9756a1fba0d37c1eec505" 114 + dependencies = [ 115 + "memchr", 116 + ] 117 + 118 + [[package]] 107 119 name = "heck" 108 120 version = "0.5.0" 109 121 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 123 135 124 136 [[package]] 125 137 name = "matroska" 126 - version = "0.28.0" 138 + version = "0.30.0" 127 139 source = "registry+https://github.com/rust-lang/crates.io-index" 128 - checksum = "af40de5639384e5c16eed140751eaeb50a3643b31842295db1f84feff8697843" 140 + checksum = "fde85cd7fb5cf875c4a46fac0cbd6567d413bea2538cef6788e3a0e52a902b45" 129 141 dependencies = [ 130 142 "bitstream-io", 131 143 "phf", ··· 181 193 182 194 [[package]] 183 195 name = "proc-macro2" 184 - version = "1.0.89" 196 + version = "1.0.106" 185 197 source = "registry+https://github.com/rust-lang/crates.io-index" 186 - checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e" 198 + checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" 187 199 dependencies = [ 188 200 "unicode-ident", 189 201 ] 190 202 191 203 [[package]] 192 204 name = "quote" 193 - version = "1.0.37" 205 + version = "1.0.45" 194 206 source = "registry+https://github.com/rust-lang/crates.io-index" 195 - checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" 207 + checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" 196 208 dependencies = [ 197 209 "proc-macro2", 198 210 ] ··· 213 225 checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" 214 226 215 227 [[package]] 216 - name = "ryu" 217 - version = "1.0.18" 228 + name = "serde" 229 + version = "1.0.228" 218 230 source = "registry+https://github.com/rust-lang/crates.io-index" 219 - checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" 231 + checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" 232 + dependencies = [ 233 + "serde_core", 234 + ] 220 235 221 236 [[package]] 222 - name = "serde" 223 - version = "1.0.215" 237 + name = "serde_core" 238 + version = "1.0.228" 224 239 source = "registry+https://github.com/rust-lang/crates.io-index" 225 - checksum = "6513c1ad0b11a9376da888e3e0baa0077f1aed55c17f50e7b2397136129fb88f" 240 + checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" 226 241 dependencies = [ 227 242 "serde_derive", 228 243 ] 229 244 230 245 [[package]] 231 246 name = "serde_derive" 232 - version = "1.0.215" 247 + version = "1.0.228" 233 248 source = "registry+https://github.com/rust-lang/crates.io-index" 234 - checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0" 249 + checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" 235 250 dependencies = [ 236 251 "proc-macro2", 237 252 "quote", ··· 240 255 241 256 [[package]] 242 257 name = "serde_json" 243 - version = "1.0.132" 258 + version = "1.0.149" 244 259 source = "registry+https://github.com/rust-lang/crates.io-index" 245 - checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03" 260 + checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86" 246 261 dependencies = [ 247 262 "itoa", 248 263 "memchr", 249 - "ryu", 250 264 "serde", 265 + "serde_core", 266 + "zmij", 251 267 ] 252 268 253 269 [[package]] ··· 264 280 265 281 [[package]] 266 282 name = "syn" 267 - version = "2.0.87" 283 + version = "2.0.117" 268 284 source = "registry+https://github.com/rust-lang/crates.io-index" 269 - checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d" 285 + checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" 270 286 dependencies = [ 271 287 "proc-macro2", 272 288 "quote", ··· 387 403 "serde_json", 388 404 "thiserror", 389 405 ] 406 + 407 + [[package]] 408 + name = "zmij" 409 + version = "1.0.21" 410 + source = "registry+https://github.com/rust-lang/crates.io-index" 411 + checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa"
+3 -3
Cargo.toml
··· 4 4 edition = "2021" 5 5 6 6 [dependencies] 7 - clap = { version = "4.5.21", features = ["derive"] } 8 - matroska = "0.28.0" 9 - serde_json = "1.0.132" 7 + clap = { version = "4.6.0", features = ["derive"] } 8 + matroska = "0.30.0" 9 + serde_json = "1.0.149" 10 10 thiserror = "2.0.18"
+4 -4
src/lib.rs
··· 36 36 37 37 pub fn rename_video(file: &PathBuf) -> io::Result<()> { 38 38 // Extract JSON metadata from video-file 39 - let json: serde_json::Value = extract_json_metadata(&file).unwrap(); 39 + let json: serde_json::Value = extract_json_metadata(file).unwrap(); 40 40 41 41 // Construct new filename 42 42 let new_filename = format!( ··· 46 46 ); 47 47 48 48 // Finally, rename the file to the right filename. 49 - rename_file(&file, &new_filename) 49 + rename_file(file, &new_filename) 50 50 } 51 51 52 52 pub fn rename_videos(in_dir: PathBuf) -> io::Result<()> { ··· 69 69 } 70 70 } 71 71 72 - if failed_videos.len() > 0 { 73 - println!("Failed to be rename {} videos.", failed_videos.iter().count()); 72 + if !failed_videos.is_empty() { 73 + println!("Failed to be rename {} videos.", failed_videos.len()); 74 74 } 75 75 Ok(()) 76 76 }