From 38fe5242149ab9f696633c13fdf08c8cc1b52cb5 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Alexis=20Laferri=C3=A8re?= Date: Fri, 2 Mar 2018 18:51:57 -0500 Subject: [PATCH] nitpm: recursively install imported packages MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Alexis Laferrière --- src/picnit.nit | 11 +++++++++-- tests/sav/picnit_args2.res | 2 +- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/picnit.nit b/src/picnit.nit index 753492b..365bcb8 100644 --- a/src/picnit.nit +++ b/src/picnit.nit @@ -121,7 +121,7 @@ class CommandInstall assert response isa CurlFileResponseSuccess if response.status_code == 404 then - print_error "Package not found by the server" + print_error "Package '{package_id}' not found on the server" exit 1 else if response.status_code != 200 then print_error "Server side error: {response.status_code}" @@ -180,9 +180,16 @@ class CommandInstall proc.wait if proc.status != 0 then - print_error "Install failed" + print_error "Install of '{name}' failed" exit 1 end + + # Recursive install + var ini = new ConfigTree(target_dir/"package.ini") + var import_line = ini["package.import"] + if import_line != null then + install_packages import_line + end end end diff --git a/tests/sav/picnit_args2.res b/tests/sav/picnit_args2.res index 8fba0b7..0c6dd31 100644 --- a/tests/sav/picnit_args2.res +++ b/tests/sav/picnit_args2.res @@ -1 +1 @@ -Already installed +Package 'hello_picnit' is already installed -- 1.7.9.5