diff options
author | Hisham <hisham@gobolinux.org> | 2016-10-19 12:43:41 -0400 |
---|---|---|
committer | Hisham <hisham@gobolinux.org> | 2016-10-19 12:43:41 -0400 |
commit | 66a4d40893199fbee5eed5abd3c91aad0a3cce2b (patch) | |
tree | 804456ac2600b57c4bf79ddecc99858820c6053b /src | |
parent | 4958f45fc46ce9bf22a1487413c8290ae27b9082 (diff) | |
download | luarocks-66a4d40893199fbee5eed5abd3c91aad0a3cce2b.tar.gz luarocks-66a4d40893199fbee5eed5abd3c91aad0a3cce2b.tar.bz2 luarocks-66a4d40893199fbee5eed5abd3c91aad0a3cce2b.zip |
Refactor error message and add extra checks.
Diffstat (limited to 'src')
-rw-r--r-- | src/luarocks/manif.lua | 4 | ||||
-rw-r--r-- | src/luarocks/manif/writer.lua | 6 | ||||
-rw-r--r-- | src/luarocks/pack.lua | 6 | ||||
-rw-r--r-- | src/luarocks/repos.lua | 17 |
4 files changed, 16 insertions, 17 deletions
diff --git a/src/luarocks/manif.lua b/src/luarocks/manif.lua index 680b5cfe..bd6fd6ee 100644 --- a/src/luarocks/manif.lua +++ b/src/luarocks/manif.lua | |||
@@ -25,7 +25,9 @@ function manif.load_rock_manifest(name, version, root) | |||
25 | end | 25 | end |
26 | local pathname = path.rock_manifest_file(name, version, root) | 26 | local pathname = path.rock_manifest_file(name, version, root) |
27 | local rock_manifest = persist.load_into_table(pathname) | 27 | local rock_manifest = persist.load_into_table(pathname) |
28 | if not rock_manifest then return nil end | 28 | if not rock_manifest then |
29 | return nil, "rock_manifest file not found for "..name.." "..version.." - not a LuaRocks tree?" | ||
30 | end | ||
29 | manif.rock_manifest_cache[name_version] = rock_manifest | 31 | manif.rock_manifest_cache[name_version] = rock_manifest |
30 | return rock_manifest.rock_manifest | 32 | return rock_manifest.rock_manifest |
31 | end | 33 | end |
diff --git a/src/luarocks/manif/writer.lua b/src/luarocks/manif/writer.lua index 75ea3b81..1eb5ee7c 100644 --- a/src/luarocks/manif/writer.lua +++ b/src/luarocks/manif/writer.lua | |||
@@ -189,10 +189,8 @@ local function store_results(results, manifest, dep_handler) | |||
189 | local entrytable = {} | 189 | local entrytable = {} |
190 | entrytable.arch = entry.arch | 190 | entrytable.arch = entry.arch |
191 | if entry.arch == "installed" then | 191 | if entry.arch == "installed" then |
192 | local rock_manifest = manif.load_rock_manifest(name, version) | 192 | local rock_manifest, err = manif.load_rock_manifest(name, version) |
193 | if not rock_manifest then | 193 | if not rock_manifest then return nil, err end |
194 | return nil, "rock_manifest file not found for "..name.." "..version.." - not a LuaRocks 2 tree?" | ||
195 | end | ||
196 | entrytable.modules = store_package_items(repos.package_modules, name, version, manifest.modules) | 194 | entrytable.modules = store_package_items(repos.package_modules, name, version, manifest.modules) |
197 | entrytable.commands = store_package_items(repos.package_commands, name, version, manifest.commands) | 195 | entrytable.commands = store_package_items(repos.package_commands, name, version, manifest.commands) |
198 | end | 196 | end |
diff --git a/src/luarocks/pack.lua b/src/luarocks/pack.lua index 989d49ee..49c68e85 100644 --- a/src/luarocks/pack.lua +++ b/src/luarocks/pack.lua | |||
@@ -102,10 +102,8 @@ local function do_pack_binary_rock(name, version, tree) | |||
102 | return nil, "'"..name.." "..version.."' does not seem to be an installed rock." | 102 | return nil, "'"..name.." "..version.."' does not seem to be an installed rock." |
103 | end | 103 | end |
104 | 104 | ||
105 | local rock_manifest = manif.load_rock_manifest(name, version, root) | 105 | local rock_manifest, err = manif.load_rock_manifest(name, version, root) |
106 | if not rock_manifest then | 106 | if not rock_manifest then return nil, err end |
107 | return nil, "rock_manifest file not found for "..name.." "..version.." - not a LuaRocks 2 tree?" | ||
108 | end | ||
109 | 107 | ||
110 | local name_version = name .. "-" .. version | 108 | local name_version = name .. "-" .. version |
111 | local rock_file = fs.absolute_name(name_version .. "."..cfg.arch..".rock") | 109 | local rock_file = fs.absolute_name(name_version .. "."..cfg.arch..".rock") |
diff --git a/src/luarocks/repos.lua b/src/luarocks/repos.lua index f1d58da0..0ed9068c 100644 --- a/src/luarocks/repos.lua +++ b/src/luarocks/repos.lua | |||
@@ -78,6 +78,7 @@ function repos.package_modules(package, version) | |||
78 | 78 | ||
79 | local result = {} | 79 | local result = {} |
80 | local rock_manifest = manif.load_rock_manifest(package, version) | 80 | local rock_manifest = manif.load_rock_manifest(package, version) |
81 | if not rock_manifest then return result end | ||
81 | store_package_data(result, package, rock_manifest.lib) | 82 | store_package_data(result, package, rock_manifest.lib) |
82 | store_package_data(result, package, rock_manifest.lua) | 83 | store_package_data(result, package, rock_manifest.lua) |
83 | return result | 84 | return result |
@@ -97,6 +98,7 @@ function repos.package_commands(package, version) | |||
97 | 98 | ||
98 | local result = {} | 99 | local result = {} |
99 | local rock_manifest = manif.load_rock_manifest(package, version) | 100 | local rock_manifest = manif.load_rock_manifest(package, version) |
101 | if not rock_manifest then return result end | ||
100 | store_package_data(result, package, rock_manifest.bin) | 102 | store_package_data(result, package, rock_manifest.bin) |
101 | return result | 103 | return result |
102 | end | 104 | end |
@@ -112,7 +114,7 @@ function repos.has_binaries(name, version) | |||
112 | assert(type(version) == "string") | 114 | assert(type(version) == "string") |
113 | 115 | ||
114 | local rock_manifest = manif.load_rock_manifest(name, version) | 116 | local rock_manifest = manif.load_rock_manifest(name, version) |
115 | if rock_manifest.bin then | 117 | if rock_manifest and rock_manifest.bin then |
116 | for name, md5 in pairs(rock_manifest.bin) do | 118 | for name, md5 in pairs(rock_manifest.bin) do |
117 | -- TODO verify that it is the same file. If it isn't, find the actual command. | 119 | -- TODO verify that it is the same file. If it isn't, find the actual command. |
118 | if fs.is_actual_binary(dir.path(cfg.deploy_bin_dir, name)) then | 120 | if fs.is_actual_binary(dir.path(cfg.deploy_bin_dir, name)) then |
@@ -196,7 +198,7 @@ function repos.deploy_files(name, version, wrap_bin_scripts) | |||
196 | 198 | ||
197 | local function deploy_file_tree(file_tree, path_fn, deploy_dir, move_fn) | 199 | local function deploy_file_tree(file_tree, path_fn, deploy_dir, move_fn) |
198 | local source_dir = path_fn(name, version) | 200 | local source_dir = path_fn(name, version) |
199 | return recurse_rock_manifest_tree(file_tree, | 201 | return recurse_rock_manifest_tree(file_tree, |
200 | function(parent_path, parent_module, file) | 202 | function(parent_path, parent_module, file) |
201 | local source = dir.path(source_dir, parent_path, file) | 203 | local source = dir.path(source_dir, parent_path, file) |
202 | local target = dir.path(deploy_dir, parent_path, file) | 204 | local target = dir.path(deploy_dir, parent_path, file) |
@@ -226,7 +228,8 @@ function repos.deploy_files(name, version, wrap_bin_scripts) | |||
226 | ) | 228 | ) |
227 | end | 229 | end |
228 | 230 | ||
229 | local rock_manifest = manif.load_rock_manifest(name, version) | 231 | local rock_manifest, err = manif.load_rock_manifest(name, version) |
232 | if not rock_manifest then return nil, err end | ||
230 | 233 | ||
231 | local ok, err = true | 234 | local ok, err = true |
232 | if rock_manifest.bin then | 235 | if rock_manifest.bin then |
@@ -305,12 +308,10 @@ function repos.delete_version(name, version, deps_mode, quick) | |||
305 | ) | 308 | ) |
306 | end | 309 | end |
307 | 310 | ||
308 | local rock_manifest = manif.load_rock_manifest(name, version) | 311 | local rock_manifest, err = manif.load_rock_manifest(name, version) |
309 | if not rock_manifest then | 312 | if not rock_manifest then return nil, err end |
310 | return nil, "rock_manifest file not found for "..name.." "..version.." - not a LuaRocks 2 tree?" | ||
311 | end | ||
312 | 313 | ||
313 | local ok, err = true | 314 | local ok = true |
314 | if rock_manifest.bin then | 315 | if rock_manifest.bin then |
315 | ok, err = delete_deployed_file_tree(rock_manifest.bin, cfg.deploy_bin_dir, cfg.wrapper_suffix) | 316 | ok, err = delete_deployed_file_tree(rock_manifest.bin, cfg.deploy_bin_dir, cfg.wrapper_suffix) |
316 | end | 317 | end |