aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/luarocks/cmd/download.tl (renamed from src/luarocks/cmd/download.lua)22
1 files changed, 16 insertions, 6 deletions
diff --git a/src/luarocks/cmd/download.lua b/src/luarocks/cmd/download.tl
index eae82439..3b85443b 100644
--- a/src/luarocks/cmd/download.lua
+++ b/src/luarocks/cmd/download.tl
@@ -1,12 +1,17 @@
1 1
2--- Module implementing the luarocks "download" command. 2--- Module implementing the luarocks "download" command.
3-- Download a rock from the repository. 3-- Download a rock from the repository.
4local cmd_download = {} 4local record cmd_download
5end
5 6
6local util = require("luarocks.util") 7local util = require("luarocks.util")
7local download = require("luarocks.download") 8local download = require("luarocks.download")
8 9
9function cmd_download.add_to_parser(parser) 10local type Parser = require("luarocks.vendor.argparse").Parser
11
12local type Args = require("luarocks.core.types.args").Args
13
14function cmd_download.add_to_parser(parser: Parser)
10 local cmd = parser:command("download", "Download a specific rock file from a rocks server.", util.see_also()) 15 local cmd = parser:command("download", "Download a specific rock file from a rocks server.", util.see_also())
11 16
12 cmd:argument("name", "Name of the rock.") 17 cmd:argument("name", "Name of the rock.")
@@ -27,14 +32,14 @@ end
27--- Driver function for the "download" command. 32--- Driver function for the "download" command.
28-- @return boolean or (nil, string): true if successful or nil followed 33-- @return boolean or (nil, string): true if successful or nil followed
29-- by an error message. 34-- by an error message.
30function cmd_download.command(args) 35function cmd_download.command(args: Args): boolean, string
31 if not args.name and not args.all then 36 if not args.name and not args.all then
32 return nil, "Argument missing. "..util.see_help("download") 37 return nil, "Argument missing. "..util.see_help("download")
33 end 38 end
34 39
35 args.name = args.name or "" 40 args.name = args.name or ""
36 41
37 local arch 42 local arch: string
38 43
39 if args.source then 44 if args.source then
40 arch = "src" 45 arch = "src"
@@ -44,8 +49,13 @@ function cmd_download.command(args)
44 arch = args.arch 49 arch = args.arch
45 end 50 end
46 51
47 local dl, err = download.download(arch, args.name, args.namespace, args.version, args.all, args.check_lua_versions) 52 if args.all then
48 return dl and true, err 53 local ok, err = download.download_all(arch, args.name, args.namespace, args.version)
54 return ok, err
55 else
56 local dl, err = download.download_file(arch, args.name, args.namespace, args.version, args.check_lua_versions)
57 return dl and true, err
58 end
49end 59end
50 60
51return cmd_download 61return cmd_download