nitpm: recursively install imported packages
authorAlexis Laferrière <alexis.laf@xymus.net>
Fri, 2 Mar 2018 23:51:57 +0000 (18:51 -0500)
committerAlexis Laferrière <alexis.laf@xymus.net>
Wed, 28 Mar 2018 13:14:04 +0000 (09:14 -0400)
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

src/picnit.nit
tests/sav/picnit_args2.res

index 753492b..365bcb8 100644 (file)
@@ -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
 
index 8fba0b7..0c6dd31 100644 (file)
@@ -1 +1 @@
-Already installed
+Package 'hello_picnit' is already installed