diff options
author | V1K1NGbg <victor@ilchev.com> | 2024-08-22 17:49:03 -0300 |
---|---|---|
committer | Hisham Muhammad <hisham@gobolinux.org> | 2024-10-21 13:30:51 -0300 |
commit | 890a5773c0db73f67ecf89a64cb6a9495e0b1f58 (patch) | |
tree | 6f29af8ae7c705ada91030776ecb752c0d086649 | |
parent | 12d24b675ce1e09fc675e6df8d1f8896b83d6c32 (diff) | |
download | luarocks-890a5773c0db73f67ecf89a64cb6a9495e0b1f58.tar.gz luarocks-890a5773c0db73f67ecf89a64cb6a9495e0b1f58.tar.bz2 luarocks-890a5773c0db73f67ecf89a64cb6a9495e0b1f58.zip |
Teal: convert luarocks.cmd.purge
-rw-r--r-- | src/luarocks/cmd/purge.tl (renamed from src/luarocks/cmd/purge.lua) | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/src/luarocks/cmd/purge.lua b/src/luarocks/cmd/purge.tl index 30811ddf..9d8eacc1 100644 --- a/src/luarocks/cmd/purge.lua +++ b/src/luarocks/cmd/purge.tl | |||
@@ -1,19 +1,25 @@ | |||
1 | 1 | ||
2 | --- Module implementing the LuaRocks "purge" command. | 2 | --- Module implementing the LuaRocks "purge" command. |
3 | -- Remove all rocks from a given tree. | 3 | -- Remove all rocks from a given tree. |
4 | local purge = {} | 4 | local record purge |
5 | needs_lock: function(Args): boolean | ||
6 | end | ||
5 | 7 | ||
6 | local util = require("luarocks.util") | 8 | local util = require("luarocks.util") |
7 | local path = require("luarocks.path") | 9 | local path = require("luarocks.path") |
8 | local search = require("luarocks.search") | 10 | local search = require("luarocks.search") |
9 | local vers = require("luarocks.core.vers") | 11 | local vers = require("luarocks.core.vers") |
10 | local repos = require("luarocks.repos") | 12 | local repo_writer = require("luarocks.repo_writer") |
11 | local writer = require("luarocks.manif.writer") | ||
12 | local cfg = require("luarocks.core.cfg") | 13 | local cfg = require("luarocks.core.cfg") |
13 | local remove = require("luarocks.remove") | 14 | local remove = require("luarocks.remove") |
14 | local queries = require("luarocks.queries") | 15 | local queries = require("luarocks.queries") |
15 | 16 | ||
16 | function purge.add_to_parser(parser) | 17 | local type Parser = require("luarocks.vendor.argparse").Parser |
18 | |||
19 | local type Args = require("luarocks.core.types.args").Args | ||
20 | |||
21 | |||
22 | function purge.add_to_parser(parser: Parser) | ||
17 | -- luacheck: push ignore 431 | 23 | -- luacheck: push ignore 431 |
18 | local cmd = parser:command("purge", [[ | 24 | local cmd = parser:command("purge", [[ |
19 | This command removes rocks en masse from a given tree. | 25 | This command removes rocks en masse from a given tree. |
@@ -34,13 +40,13 @@ The --tree option is mandatory: luarocks purge does not assume a default tree.]] | |||
34 | "without reporting dependency issues.") | 40 | "without reporting dependency issues.") |
35 | end | 41 | end |
36 | 42 | ||
37 | function purge.command(args) | 43 | function purge.command(args: Args): boolean, string |
38 | local tree = args.tree | 44 | local tree = args.tree |
39 | 45 | ||
40 | local results = {} | 46 | local results = {} |
41 | search.local_manifest_search(results, path.rocks_dir(tree), queries.all()) | 47 | search.local_manifest_search(results, path.rocks_dir(tree), queries.all()) |
42 | 48 | ||
43 | local sort = function(a,b) return vers.compare_versions(b,a) end | 49 | local sort = function(a: string,b: string): boolean return vers.compare_versions(b,a) end |
44 | if args.old_versions then | 50 | if args.old_versions then |
45 | sort = vers.compare_versions | 51 | sort = vers.compare_versions |
46 | end | 52 | end |
@@ -58,16 +64,16 @@ function purge.command(args) | |||
58 | break | 64 | break |
59 | else | 65 | else |
60 | util.printout("Removing "..package.." "..version.."...") | 66 | util.printout("Removing "..package.." "..version.."...") |
61 | local ok, err = repos.delete_version(package, version, "none", true) | 67 | local ok, err = repo_writer.delete_version(package, version, "none", true) |
62 | if not ok then | 68 | if not ok then |
63 | util.printerr(err) | 69 | util.printerr(err) |
64 | end | 70 | end |
65 | end | 71 | end |
66 | end | 72 | end |
67 | end | 73 | end |
68 | return writer.make_manifest(cfg.rocks_dir, "one") | 74 | return repo_writer.refresh_manifest(cfg.rocks_dir) |
69 | end | 75 | end |
70 | 76 | ||
71 | purge.needs_lock = function() return true end | 77 | purge.needs_lock = function(): boolean return true end |
72 | 78 | ||
73 | return purge | 79 | return purge |