[Tarantool-patches] [PATCH 3/3] Adapt luarocks help for the tarantoolctl

lvasiliev lvasiliev at tarantool.org
Sun Apr 5 18:15:51 MSK 2020


Hi! Thanks for the review. See PATCH v2 and comments bellow.

On 04.04.2020 22:02, Vladislav Shpilevoy wrote:
> Thanks for the patch!
> 
> It would be good to get any explanations here. My main
> question is whether luarocks is a self sufficient tool,
> or it is a library used solely by tarantoolctl? In the
> latter case lots of things can be done simpler than they
> are. In the former case it looks incorrect to use 'tarantoolct'
> name anywhere in the sources.
In my mind it is a self sufficient tool with some our patches (not only 
mine). luaroks has been changed to tarantoolctl rocks in the cases where 
it used like program name, in my mind it's user frendly and more correct.
> 
> See 3 comments below.
> 
> On 25/03/2020 22:50, Leonid Vasiliev wrote:
>> ---
>>   src/luarocks/cmd/config.lua      | 18 +++++++++---------
>>   src/luarocks/cmd/help.lua        | 10 +++-------
>>   src/luarocks/cmd/make.lua        |  4 ++--
>>   src/luarocks/cmd/new_version.lua |  2 +-
>>   src/luarocks/cmd/purge.lua       |  2 +-
>>   5 files changed, 16 insertions(+), 20 deletions(-)
>>
>> diff --git a/src/luarocks/cmd/config.lua b/src/luarocks/cmd/config.lua
>> index e9b2fef..d540dea 100644
>> --- a/src/luarocks/cmd/config.lua
>> +++ b/src/luarocks/cmd/config.lua
>> @@ -17,9 +17,9 @@ config_cmd.help = [[
>>     all config files and any command-line flags passed)
>>   
>>     Examples:
>> -     luarocks config lua_interpreter
>> -     luarocks config variables.LUA_INCDIR
>> -     luarocks config lua_version
>> +     tarantoolctl rocks config lua_interpreter
>> +     tarantoolctl rocks config variables.LUA_INCDIR
>> +     tarantoolctl rocks config lua_version
>>   
>>   * When given a configuration key and a value,
>>     it overwrites the config file (see the --scope option below to determine which)
>> @@ -31,26 +31,26 @@ config_cmd.help = [[
>>       used by LuaRocks commands (eqivalent to passing --lua-version).
>>   
>>     Examples:
>> -     luarocks config variables.OPENSSL_DIR /usr/local/openssl
>> -     luarocks config lua_dir /usr/local
>> -     luarocks config lua_version 5.3
>> +     tarantoolctl rocks config variables.OPENSSL_DIR /usr/local/openssl
>> +     tarantoolctl rocks config lua_dir /usr/local
>> +     tarantoolctl rocks config lua_version 5.3
>>   
>>   * When given a configuration key and --unset,
>>     it overwrites the config file (see the --scope option below to determine which)
>>     and deletes that key from the file.
>>   
>> -  Example: luarocks config variables.OPENSSL_DIR --unset
>> +  Example: tarantoolctl rocks config variables.OPENSSL_DIR --unset
>>   
>>   * When given no arguments, it prints the entire currently active
>>     configuration, resulting from reading the config files from
>>     all scopes.
>>   
>> -  Example: luarocks config
>> +  Example: tarantoolctl rocks config
>>   
>>   OPTIONS
>>   --scope=<scope>   The scope indicates which config file should be rewritten.
>>                     Accepted values are "system", "user" or "project".
>> -                  * Using a wrapper created with `luarocks init`,
>> +                  * Using a wrapper created with `tarantoolctl rocks init`,
>>                       the default is "project".
>>                     * Using --local (or when `local_by_default` is `true`),
>>                       the default is "user".
>> diff --git a/src/luarocks/cmd/help.lua b/src/luarocks/cmd/help.lua
>> index dcc9e35..689fd2d 100644
>> --- a/src/luarocks/cmd/help.lua
>> +++ b/src/luarocks/cmd/help.lua
>> @@ -10,7 +10,7 @@ local util = require("luarocks.util")
>>   local cfg = require("luarocks.core.cfg")
>>   local dir = require("luarocks.dir")
>>   
>> -local program = util.this_program("luarocks")
>> +local program = util.this_program("luarocks") .. " rocks"
> 
> 1. So under some circumstances it is possible to get help in
> form of 'luarocks rocks' instead of 'tarantoolctl rocks'?
'luarocks rocks'? In my mind - No.
> 
> Why does this util.this_program() even take any parameters? Can
> it just return 'tarantoolctl' constantly?
Because it can be "tarantoolctl", "./tarantoolctl" or something else.
> 
>>   help.help_summary = "Help on commands. Type '"..program.." help <command>' for more."
>>   
>> @@ -20,7 +20,8 @@ help.help = [[
>>   ]]
>>   
>>   local function print_banner()
>> -   util.printout("\nLuaRocks "..cfg.program_version..", the Lua package manager")
>> +   util.printout("\nTarantoolctl rocks, the Lua package manager"
>> +                 .. " based on LuaRocks " .. cfg.program_version)
>>   end
>>   
>>   local function print_section(section)
>> @@ -62,12 +63,7 @@ function help.command(description, commands, command)
>>   	                       (overrides any entries in the config file)
>>   	--only-sources=<url>   Restrict downloads to paths matching the
>>   	                       given URL.
>> -        --lua-dir=<prefix>     Which Lua installation to use.
>> -	--lua-version=<ver>    Which Lua version to use.
>>   	--tree=<tree>          Which tree to operate on.
>> -	--local                Use the tree in the user's home directory.
>> -	                       To enable it, see ']]..program..[[ help path'.
>> -	--global               Use the system tree when `local_by_default` is `true`.
> 
> 2. I am sure these removals should happen in the previous commit.
Moved
> 
>>   	--verbose              Display verbose output of commands executed.
>>   	--timeout=<seconds>    Timeout on network operations, in seconds.
>>   	                       0 means no timeout (wait forever).
>> diff --git a/src/luarocks/cmd/make.lua b/src/luarocks/cmd/make.lua
>> index 025ac11..dc70d49 100644
>> --- a/src/luarocks/cmd/make.lua
>> +++ b/src/luarocks/cmd/make.lua
>> @@ -32,8 +32,8 @@ This command is useful as a tool for debugging rockspecs.
>>   To install rocks, you'll normally want to use the "install" and
>>   "build" commands. See the help on those for details.
>>   
>> -NB: Use `luarocks install` with the `--only-deps` flag if you want to install
>> -only dependencies of the rockspec (see `luarocks help install`).
>> +NB: Use `tarantoolctl rocks install` with the `--only-deps` flag if you want to install
>> +only dependencies of the rockspec (see `tarantoolctl rocks help install`).
>>   
>>   --pack-binary-rock  Do not install rock. Instead, produce a .rock file
>>                       with the contents of compilation in the current
>> diff --git a/src/luarocks/cmd/new_version.lua b/src/luarocks/cmd/new_version.lua
>> index f1181d4..e0ce760 100644
>> --- a/src/luarocks/cmd/new_version.lua
>> +++ b/src/luarocks/cmd/new_version.lua
>> @@ -18,7 +18,7 @@ from a previous one.
>>   
>>   If a package name is given, it downloads the latest rockspec from the
>>   default server. If a rockspec is given, it uses it instead. If no argument
>> -is given, it looks for a rockspec same way 'luarocks make' does.
>> +is given, it looks for a rockspec same way 'tarantoolctl rocks make' does.
>>   
>>   If the version number is not given and tag is passed using --tag,
>>   it is used as the version, with 'v' removed from beginning.
>> diff --git a/src/luarocks/cmd/purge.lua b/src/luarocks/cmd/purge.lua
>> index 98b76a0..31b09e3 100644
>> --- a/src/luarocks/cmd/purge.lua
>> +++ b/src/luarocks/cmd/purge.lua
>> @@ -21,7 +21,7 @@ purge.help = [[
>>   This command removes rocks en masse from a given tree.
>>   By default, it removes all rocks from a tree.
>>   
>> -The --tree argument is mandatory: luarocks purge does not
>> +The --tree argument is mandatory: tarantoolctl rocks purge does not
>>   assume a default tree.
>>   
>>   --old-versions  Keep the highest-numbered version of each
> 
> 3. If this commmit is indended to fully replace luarocks with tarantoolctl
> in all comments and help texts, then it does not finish this task. I grepped
> 'luarocks' and still see tons of places where luarocks is mentioned.
I want to change luarocks to tarantoolctl rocks only where it used as 
program name in helps and stay luaroks where it used as a module name.
> 


More information about the Tarantool-patches mailing list