aboutsummaryrefslogtreecommitdiff
path: root/src/luarocks/cmd/doc.tl
diff options
context:
space:
mode:
Diffstat (limited to 'src/luarocks/cmd/doc.tl')
-rw-r--r--src/luarocks/cmd/doc.tl18
1 files changed, 14 insertions, 4 deletions
diff --git a/src/luarocks/cmd/doc.tl b/src/luarocks/cmd/doc.tl
index 37eb2518..9e7bee2a 100644
--- a/src/luarocks/cmd/doc.tl
+++ b/src/luarocks/cmd/doc.tl
@@ -16,6 +16,7 @@ local download = require("luarocks.download")
16local type Parser = require("luarocks.vendor.argparse").Parser 16local type Parser = require("luarocks.vendor.argparse").Parser
17 17
18local type Args = require("luarocks.core.types.args").Args 18local type Args = require("luarocks.core.types.args").Args
19local type Rockspec = require("luarocks.core.types.rockspec").Rockspec
19 20
20function doc.add_to_parser(parser: Parser) 21function doc.add_to_parser(parser: Parser)
21 local cmd = parser:command("doc", "Show documentation for an installed rock.\n\n".. 22 local cmd = parser:command("doc", "Show documentation for an installed rock.\n\n"..
@@ -45,17 +46,26 @@ local function show_homepage(homepage: string, name: string, namespace: string,
45end 46end
46 47
47local function try_to_open_homepage(name: string, namespace: string, version: string): boolean, string 48local function try_to_open_homepage(name: string, namespace: string, version: string): boolean, string
48 local temp_dir, err = fs.make_temp_dir("doc-"..name.."-"..(version or "")) 49 local temp_dir, err: string, string
50 temp_dir, err = fs.make_temp_dir("doc-"..name.."-"..(version or ""))
49 if not temp_dir then 51 if not temp_dir then
50 return nil, "Failed creating temporary directory: "..err 52 return nil, "Failed creating temporary directory: "..err
51 end 53 end
54
52 util.schedule_function(fs.delete, temp_dir) 55 util.schedule_function(fs.delete, temp_dir)
53 local ok, err = fs.change_dir(temp_dir) 56
57 local ok: boolean
58 ok, err = fs.change_dir(temp_dir)
54 if not ok then return nil, err end 59 if not ok then return nil, err end
55 local filename, err = download.download_file("rockspec", name, namespace, version) 60
61 local filename: string
62 filename, err = download.download_file("rockspec", name, namespace, version)
56 if not filename then return nil, err end 63 if not filename then return nil, err end
57 local rockspec, err = fetch.load_local_rockspec(filename) 64
65 local rockspec: Rockspec
66 rockspec, err = fetch.load_local_rockspec(filename)
58 if not rockspec then return nil, err end 67 if not rockspec then return nil, err end
68
59 fs.pop_dir() 69 fs.pop_dir()
60 local descript = rockspec.description or {} 70 local descript = rockspec.description or {}
61 return show_homepage(descript.homepage, name, namespace, version) 71 return show_homepage(descript.homepage, name, namespace, version)