diff options
-rw-r--r-- | src/luarocks/list.lua | 22 |
1 files changed, 7 insertions, 15 deletions
diff --git a/src/luarocks/list.lua b/src/luarocks/list.lua index b517d182..8affc52f 100644 --- a/src/luarocks/list.lua +++ b/src/luarocks/list.lua | |||
@@ -29,27 +29,19 @@ local function check_outdated(trees, query) | |||
29 | end | 29 | end |
30 | local outdated = {} | 30 | local outdated = {} |
31 | for name, versions in util.sortedpairs(results_installed) do | 31 | for name, versions in util.sortedpairs(results_installed) do |
32 | local latest_installed | 32 | versions = util.keys(versions) |
33 | local latest_available, latest_available_repo | 33 | table.sort(versions, deps.compare_versions) |
34 | 34 | local latest_installed = versions[1] | |
35 | for version, _ in util.sortedpairs(versions, deps.compare_versions) do | ||
36 | latest_installed = version | ||
37 | break | ||
38 | end | ||
39 | 35 | ||
40 | local query_available = search.make_query(name:lower()) | 36 | local query_available = search.make_query(name:lower()) |
41 | query.exact_name = true | 37 | query.exact_name = true |
42 | local results_available, err = search.search_repos(query_available) | 38 | local results_available, err = search.search_repos(query_available) |
43 | 39 | ||
44 | if results_available[name] then | 40 | if results_available[name] then |
45 | for version, repos in util.sortedpairs(results_available[name], deps.compare_versions) do | 41 | local available_versions = util.keys(results_available[name]) |
46 | latest_available = version | 42 | table.sort(available_versions, deps.compare_versions) |
47 | for _, repo in ipairs(repos) do | 43 | local latest_available = available_versions[1] |
48 | latest_available_repo = repo.repo | 44 | local latest_available_repo = results_available[name][latest_available][1].repo |
49 | break | ||
50 | end | ||
51 | break | ||
52 | end | ||
53 | 45 | ||
54 | if deps.compare_versions(latest_available, latest_installed) then | 46 | if deps.compare_versions(latest_available, latest_installed) then |
55 | table.insert(outdated, { name = name, installed = latest_installed, available = latest_available, repo = latest_available_repo }) | 47 | table.insert(outdated, { name = name, installed = latest_installed, available = latest_available, repo = latest_available_repo }) |