From 9ec382facd8d7813716a10e5f7db3ca7f4ba0259 Mon Sep 17 00:00:00 2001 From: RblSb Date: Wed, 3 Sep 2025 10:30:19 +0300 Subject: /crash, update yt-dlp on start, newer node fix --- src/Types.hx | 1 + src/client/Main.hx | 5 +++++ src/server/ConsoleInput.hx | 5 ++++- src/server/Main.hx | 5 +++++ src/server/cache/Cache.hx | 5 ++++- src/server/cache/YoutubeCache.hx | 10 ++++++++++ 6 files changed, 29 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/Types.hx b/src/Types.hx index 9263c57..60ce612 100644 --- a/src/Types.hx +++ b/src/Types.hx @@ -296,4 +296,5 @@ enum abstract WsEventType(String) { var UpdatePlaylist; var TogglePlaylistLock; var Dump; + var CrashTest; } diff --git a/src/client/Main.hx b/src/client/Main.hx index d3d1ce2..5e05690 100644 --- a/src/client/Main.hx +++ b/src/client/Main.hx @@ -697,6 +697,8 @@ class Main { case Dump: Utils.saveFile("dump.json", ApplicationJson, data.dump.data); + + case CrashTest: } } @@ -1344,6 +1346,9 @@ class Main { case "dump": send({type: Dump}); return true; + case "crash": + send({type: CrashTest}); + return true; } if (matchSimpleDate.match(command)) { send({ diff --git a/src/server/ConsoleInput.hx b/src/server/ConsoleInput.hx index e0712f5..f729e0d 100644 --- a/src/server/ConsoleInput.hx +++ b/src/server/ConsoleInput.hx @@ -57,6 +57,7 @@ class ConsoleInput { output: process.stdout, completer: onCompletion }); + final originalTrace = haxe.Log.trace; haxe.Log.trace = (msg:Dynamic, ?infos:haxe.PosInfos) -> { Readline.clearLine(process.stdout, 0); Readline.cursorTo(process.stdout, 0, null); @@ -68,7 +69,9 @@ class ConsoleInput { parseLine(line); rl.prompt(); }); - // rl.on("close", exit); + rl.on("close", () -> { + haxe.Log.trace = originalTrace; + }); } function formatOutput(v:Dynamic, infos:haxe.PosInfos):String { diff --git a/src/server/Main.hx b/src/server/Main.hx index 66fbb27..e926492 100644 --- a/src/server/Main.hx +++ b/src/server/Main.hx @@ -1032,6 +1032,11 @@ class Main { data: json } }); + case CrashTest: + if (!client.isAdmin) return; + trace("Crashing..."); + final arr:Array = cast null; + arr[1]++; } } diff --git a/src/server/cache/Cache.hx b/src/server/cache/Cache.hx index 56749d8..cfe2f66 100644 --- a/src/server/cache/Cache.hx +++ b/src/server/cache/Cache.hx @@ -28,7 +28,10 @@ class Cache { youtubeCache = new YoutubeCache(main, this); rawCache = new RawCache(main, this); isYtReady = youtubeCache.checkYtDeps(); - if (isYtReady) youtubeCache.cleanYtInputFiles(); + if (isYtReady) { + youtubeCache.cleanYtInputFiles(); + youtubeCache.checkUpdate(); + } } public function getCachedFiles():Array { diff --git a/src/server/cache/YoutubeCache.hx b/src/server/cache/YoutubeCache.hx index 4f74080..c7053f9 100644 --- a/src/server/cache/YoutubeCache.hx +++ b/src/server/cache/YoutubeCache.hx @@ -29,6 +29,16 @@ class YoutubeCache { } } + public function checkUpdate():Void { + ytDlp.execAsync("-U", { + onData: d -> { + trace(d); + } + }).catchError(e -> { + trace(e); + }); + } + public function cleanYtInputFiles(prefix = "__tmp"):Void { final names = FileSystem.readDirectory(cache.cacheDir); for (name in names) { -- cgit v1.2.3