From 0411d206479895fe3f57bf29dc62546076caa919 Mon Sep 17 00:00:00 2001 From: liquidz Date: Sat, 21 Sep 2024 06:28:58 +0900 Subject: [PATCH] fix: Fix to work with invoke-tool correctly cf. #261 --- src/antq/core.clj | 10 +++++++--- src/antq/tool.clj | 6 +++++- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/antq/core.clj b/src/antq/core.clj index 3e1a251b..8b1c668b 100644 --- a/src/antq/core.clj +++ b/src/antq/core.clj @@ -231,9 +231,13 @@ :latest-name verified-name)) deps)) +(defn- system-exit + [n] + (System/exit n)) + (defn exit [outdated-deps] - (System/exit (if (seq outdated-deps) 1 0))) + (system-exit (if (seq outdated-deps) 1 0))) (defn fetch-deps [options] @@ -303,7 +307,7 @@ errors (do (doseq [e errors] (log/error e)) - (System/exit 1)) + (system-exit 1)) (seq deps) (let [alog (log/start-async-logger!) @@ -323,7 +327,7 @@ :else (do (log/info "No project file") - (System/exit 1))))) + (system-exit 1))))) (defn -main [& args] diff --git a/src/antq/tool.clj b/src/antq/tool.clj index 2ed2e047..665706ac 100644 --- a/src/antq/tool.clj +++ b/src/antq/tool.clj @@ -51,7 +51,11 @@ [& [options]] (let [options (prepare-options options)] (binding [log/*verbose* (:verbose options false)] - (core/main* options nil)))) + (with-redefs [core/system-exit (fn [n] + (when (not= 0 n) + (throw (ex-info "Exited" {:code n}))) + n)] + (core/main* options nil))))) (defn help [& _]