[Tarantool-patches] [PATCH v2 1/2] luarocks: Add a kludge for option all of luarocks search

lvasiliev lvasiliev at tarantool.org
Wed Apr 1 13:00:27 MSK 2020


Hi, thanks for the review. You're darn right!

diff --git a/extra/dist/tarantoolctl.in b/extra/dist/tarantoolctl.in
index 2b95e29..b26dd10 100755
--- a/extra/dist/tarantoolctl.in
+++ b/extra/dist/tarantoolctl.in
@@ -945,7 +945,7 @@ local function rocks()
      end
      table.insert(positional_arguments, key)

-    if positional_arguments[1] == "search" and find_arg("all") then
+    if positional_arguments[1] == "search" and keyword_arguments["all"] 
then
          table.insert(positional_arguments, "--all")
      end

On 01.04.2020 2:21, Igor Munkin wrote:
> Leonid,
> 
> Thanks for the patch! Please consider the comment below.
> 
> On 16.03.20, Leonid Vasiliev wrote:
>> From: Leonid <lvasiliev at tarantool.org>
>>
>> Fixed the tarantoolctl rocks search flag --all
>>
>> Forwarding of the --all flag to tarantoolctl rocks module was added.
>> (Command: tarantoolctl rocks search --all)
>>
>> Fixes: #4529
>> ---
>>   extra/dist/tarantoolctl.in | 6 ++++++
>>   1 file changed, 6 insertions(+)
>>
>> diff --git a/extra/dist/tarantoolctl.in b/extra/dist/tarantoolctl.in
>> index 6daf866ac..372838edd 100755
>> --- a/extra/dist/tarantoolctl.in
>> +++ b/extra/dist/tarantoolctl.in
> 
> <snipped>
> 
>> @@ -945,6 +946,10 @@ local function rocks()
>>       end
>>       table.insert(positional_arguments, key)
>>   
>> +    if positional_arguments[1] == "search" and find_arg("all") then
> 
> This is a bad check. Consider the following example:
> | $ export LUA_PATH="$LUA_PATH;third_party/luarocks/src/?.lua;;"
> | $ ./extra/dist/tarantoolctl rocks search --all > valid.out
> | $ wc valid.out && echo "Non-empty output"
> | 17835  56986 605906 valid.out
> | Non-empty output
> | $ ./extra/dist/tarantoolctl rocks search all --force > invalid.out
> | $ diff -u valid.out invalid.out && echo "Outputs are the same"
> | Outputs are the same
> 
> You need to check whether 'all' key exists in keyword_arguments, not to
> search 'all' substring in arg tables values.
> 
>> +        table.insert(positional_arguments, "--all")
>> +    end
>> +
>>       -- Tweak help messages
>>       util.see_help = function(command, program)
>>           -- TODO: print extended help message here
> 
> <snipped>
> 
>> -- 
>> 2.17.1
>>
> 


More information about the Tarantool-patches mailing list