From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from [87.239.111.99] (localhost [127.0.0.1]) by dev.tarantool.org (Postfix) with ESMTP id AD562F2DC16; Wed, 12 Feb 2025 07:46:56 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org AD562F2DC16 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1739335616; bh=76cGBq/oAfUZhVzzwlQUSVJLVN2/6Oxk/O226vXO3gs=; h=Date:To:Cc:References:In-Reply-To:Subject:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=f1ew4ClxjWb92tnF1kG9CEOgQFRXoNmDww079OEfoiIKj4EWRBkCL/4yfYrkiB0Ao 9Y+daDGhYb1ypJijYRdUwn9wB43nWbmYnx+TQ495yswUOVvZQKZmyOBuc3DTv1N89x YC+0B55I16CXgQx+zVDpVH8RXi8EA2eYHBmq6MnE= Received: from send129.i.mail.ru (send129.i.mail.ru [89.221.237.224]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 4D06F53E470 for ; Wed, 12 Feb 2025 07:46:55 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 4D06F53E470 Received: by exim-smtp-79fd7578cb-nsfdx with esmtpa (envelope-from ) id 1ti4eD-00000000KL0-3ljr; Wed, 12 Feb 2025 07:46:54 +0300 Content-Type: multipart/alternative; boundary="------------EXxys29NUiXFr5veFGgP5Z1X" Message-ID: Date: Wed, 12 Feb 2025 07:46:53 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US To: Sergey Kaplun , Sergey Bronnikov Cc: tarantool-patches@dev.tarantool.org References: In-Reply-To: X-Mailru-Src: smtp X-4EC0790: 10 X-7564579A: 646B95376F6C166E X-77F55803: 4F1203BC0FB41BD96946CDE51E80C51A5F72CD9CD2B00B8B42B08F1B0881672C182A05F538085040C8902932E493FE2E3DE06ABAFEAF67051136A16322A11C5F45B15C13A3FE242C11C818FDE99753ED X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE78044725E6B9C7F2CEA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F7900637C1CDCB5E4A85220F8638F802B75D45FF36EB9D2243A4F8B5A6FCA7DBDB1FC311F39EFFDF887939037866D6147AF826D898A52344B1A1746B7EB06DCC7AAB432D81009C22DC6ACBADCC7F00164DA146DAFE8445B8C89999728AA50765F7900637BA939FD1B3BAB99B389733CBF5DBD5E9C8A9BA7A39EFB766F5D81C698A659EA7CC7F00164DA146DA9985D098DBDEAEC8ED96AA85C75E140D117882F4460429728AD0CFFFB425014E868A13BD56FB6657D81D268191BDAD3DC09775C1D3CA48CF9A1C9D3BA3303E89BA3038C0950A5D36C8A9BA7A39EFB766D91E3A1F190DE8FDBA3038C0950A5D36D5E8D9A59859A8B6BFC5BFC0DB013F7476E601842F6C81A1F004C906525384303E02D724532EE2C3F43C7A68FF6260569E8FC8737B5C2249EC8D19AE6D49635B68655334FD4449CB9ECD01F8117BC8BEAAAE862A0553A39223F8577A6DFFEA7CA35FE21102777C0943847C11F186F3C59DAA53EE0834AAEE X-C1DE0DAB: 0D63561A33F958A5911917885BE302615002B1117B3ED696690517616CE0B94E6E5F408120975D33823CB91A9FED034534781492E4B8EEAD2739D626790C8313BDAD6C7F3747799A X-C8649E89: 1C3962B70DF3F0ADE00A9FD3E00BEEDF3FED46C3ACD6F73ED3581295AF09D3DF87807E0823442EA2ED31085941D9CD0AF7F820E7B07EA4CF956C1638EAA579CF5C789E7410449A7D23035A2E558615C7800D5CEAAF1B659B91CDF2D949345910856F99080E561BE193C341FB83A326A43937EAE8162CB51C42312F621DFB5EFF5F4332CA8FE04980913E6812662D5F2AB9AF64DB4688768036DF5FE9C0001AF333F2C28C22F508233FCF178C6DD14203 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5ycPtXkTV4k65bRjmOUUP8cvGozZ33TWg5HZplvhhXbhDGzqmQDTd6OAevLeAnq3Ra9uf7zvY2zzsIhlcp/Y7m53TZgf2aB4JOg4gkr2bioj/gRw+nncFFA8Z4ID+nrZkw== X-Mailru-Sender: C4F68CFF4024C8867DFDF7C7F2588458C06410C11F298ECEF33F69C7E48EA1FBE71E1103392ADA61CC767B9E44C0AE74645D15D82EE4B272BD6E4642A116CA93524AA66B5ACBE6721EF430B9A63E2A504198E0F3ECE9B5443453F38A29522196 X-Mras: Ok Subject: Re: [Tarantool-patches] [PATCH luajit] test: limit code and comment max length by 80 X-BeenThere: tarantool-patches@dev.tarantool.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Sergey Bronnikov via Tarantool-patches Reply-To: Sergey Bronnikov Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" This is a multi-part message in MIME format. --------------EXxys29NUiXFr5veFGgP5Z1X Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, Sergey thanks for review! Please see my comments. On 11.02.2025 14:51, Sergey Kaplun via Tarantool-patches wrote: > Hi, Sergey! > Thanks for the patch! > It's a nice idea to automate this part of the review! > > Please consider my questions below. > > On 11.02.25, Sergey Bronnikov wrote: >> The patch sets a max length with 80 symbols and fixes tests >> exceeding this length. >> --- >> Branch:https://github.com/tarantool/luajit/tree/ligurio/gh-xxxx-set-max-length >> Luacheck configuration file: >> https://luacheck.readthedocs.io/en/stable/config.html >> >> .luacheckrc | 5 +++++ >> test/tarantool-tests/fix-argv-handling.test.lua | 4 ++++ >> .../gh-3196-incorrect-string-length.test.lua | 3 +++ >> test/tarantool-tests/gh-6163-min-max.test.lua | 4 ++++ >> .../lj-366-strtab-correct-size.test.lua | 10 ++++++++-- >> .../lj-494-table-chain-infinite-loop.test.lua | 3 ++- >> test/tarantool-tests/lj-688-snap-ir-rename.test.lua | 2 ++ >> test/tarantool-tests/lj-819-fix-missing-uclo.test.lua | 6 ++++-- >> .../lj-918-fma-numerical-accuracy-jit.test.lua | 4 ++++ >> .../lj-918-fma-numerical-accuracy.test.lua | 4 ++++ >> test/tarantool-tests/or-144-gc64-asmref-l.test.lua | 4 ++++ >> 11 files changed, 44 insertions(+), 5 deletions(-) >> >> diff --git a/.luacheckrc b/.luacheckrc >> index f2573e42..8047677c 100644 >> --- a/.luacheckrc >> +++ b/.luacheckrc >> @@ -3,6 +3,11 @@ std = 'luajit' >> -- This fork also introduces a new global for misc API namespace. >> read_globals = { 'misc' } >> >> +max_line_length = 80 > I suppose this is excess since we have all other settings intact. Removed. > >> +max_code_line_length = 80 >> +max_string_line_length = 80 > Do we need this particular check? Maybe it is covered by the > `max_code_line_length` and `max_line_length`. Can we avoid markers in > without it? > >> +max_comment_line_length = 80 > Actually, the comment length for the Lua part is 66 symbols. Maybe we > may omit this check to avoid stubs in the comments? The main idea is automating this check and avoid comments like "your comment is exceeded XXX symbols" on review. So I don't understand how to omit this check. BTW luacheck with "max_comment_line_length = 66" reports 89 warnings, it means that manual (visual) checking of max length in comments is unreliable and we definitely should automate it. > >> + >> -- The `_TARANTOOL` global is often used for skip condition >> -- checks in tests. >> files['test/tarantool-tests/'] = { >> diff --git a/test/tarantool-tests/fix-argv-handling.test.lua b/test/tarantool-tests/fix-argv-handling.test.lua >> index 84b626c3..5f147197 100644 >> --- a/test/tarantool-tests/fix-argv-handling.test.lua >> +++ b/test/tarantool-tests/fix-argv-handling.test.lua >> @@ -10,7 +10,11 @@ test:plan(1) >> -- to a single empty string if it is empty [1], so the issue is >> -- not reproducible on new kernels. >> -- >> +-- luacheck: push no max comment line length > Side note: Can it will be done without push/pop interface? Like for > globals we use: > | luacheck: no global AFAIR, no. Global suppression will cover the whole file, I don't think it is a good idea. Approach with push/pop was already used in commit 9ac79bd7cd12dc3dbfa0e502e29a99b3083676c1  ("test: introduce test:done TAP helper") why we cannot continue using this approach for other files? > >> +-- >> -- [1]:https://lore.kernel.org/all/20220201000947.2453721-1-keescook@chromium.org/ >> +-- >> +-- luacheck: pop >> >> local utils = require('utils') >> local execlib = require('execlib') >> diff --git a/test/tarantool-tests/gh-3196-incorrect-string-length.test.lua b/test/tarantool-tests/gh-3196-incorrect-string-length.test.lua >> index b82029f6..79521608 100644 >> --- a/test/tarantool-tests/gh-3196-incorrect-string-length.test.lua >> +++ b/test/tarantool-tests/gh-3196-incorrect-string-length.test.lua >> @@ -6,10 +6,13 @@ test:plan(2) >> -- >> -- gh-3196: incorrect string length if Lua hash returns 0 >> -- >> +-- luacheck: push no max code line length > Side note: Can it will be done without push/pop interface? Like for > globals we use: > | luacheck: no global See above. >> +-- >> local h = "\x1F\x93\xE2\x1C\xCA\xDE\x28\x08\x26\x01\xED\x0A\x2F\xE4\x21\x02\x97\x77\xD9\x3E" >> test:is(h:len(), 20) >> >> h = "\x0F\x93\xE2\x1C\xCA\xDE\x28\x08\x26\x01\xED\x0A\x2F\xE4\x21\x02\x97\x77\xD9\x3E" >> test:is(h:len(), 20) >> +-- luacheck: pop >> >> test:done(true) >> diff --git a/test/tarantool-tests/gh-6163-min-max.test.lua b/test/tarantool-tests/gh-6163-min-max.test.lua >> index e3efd1a4..ca6c2a7f 100644 >> --- a/test/tarantool-tests/gh-6163-min-max.test.lua >> +++ b/test/tarantool-tests/gh-6163-min-max.test.lua >> @@ -69,9 +69,13 @@ jit.opt.start('hotloop=1') >> -- pair is emitted, and the result is `NaN`, which is inconsistent with >> -- the result of the non-optimized mcode. >> -- >> +-- luacheck: push no max comment line length > Side note: Can it will be done without push/pop interface? Like for > globals we use: > | luacheck: no global > >> +-- >> -- [1]:https://developer.arm.com/documentation/dui0801/g/A64-Floating-point-Instructions/FCMP >> -- [2]:https://developer.arm.com/documentation/100069/0608/A64-Floating-point-Instructions/FCSEL >> -- [3]:https://developer.arm.com/documentation/dui0068/b/ARM-Instruction-Reference/Conditional-execution >> +-- >> +-- luacheck: pop >> >> local result = {} >> for k = 1, 4 do >> diff --git a/test/tarantool-tests/lj-366-strtab-correct-size.test.lua b/test/tarantool-tests/lj-366-strtab-correct-size.test.lua >> index a20339e5..b46ace49 100644 >> --- a/test/tarantool-tests/lj-366-strtab-correct-size.test.lua >> +++ b/test/tarantool-tests/lj-366-strtab-correct-size.test.lua >> @@ -22,11 +22,15 @@ local utils = require('utils') >> -- >> -- $ readelf --symbols xxx.obj >> -- >> +-- luacheck: push no max comment line length >> +-- >> -- Symbol table '.symtab' contains 2 entries: >> -- Num: Value Size Type Bind Vis Ndx Name >> -- 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND >> -- 1: 0000000000000000 66 OBJECT GLOBAL DEFAULT 4 luaJIT_BC_lango_team >> -- >> +-- luacheck: pop >> +-- >> -- and to display the information contained in the file's section >> -- headers, if it has any. For our purposes, we are interested in >> -- .symtab section, so other sections are snipped in the output: >> @@ -143,7 +147,8 @@ end >> -- and symtab sections. >> local function read_elf(elf_content) >> local ELFobj_type = ffi.typeof(is64 and 'ELF64obj *' or 'ELF32obj *') >> - local ELFsectheader_type = ffi.typeof(is64 and 'ELF64sectheader *' or 'ELF32sectheader *') >> + local ELFsectheader_type = ffi.typeof(is64 and 'ELF64sectheader *' or >> + 'ELF32sectheader *') >> local elf = ffi.cast(ELFobj_type, elf_content) >> local symtab_hdr, strtab_hdr >> -- Iterate by section headers. >> @@ -178,7 +183,8 @@ assert(sym_cnt ~= 0, 'number of symbols is zero') >> test:is(strtab_size, EXPECTED_STRTAB_SIZE, 'check .strtab size') >> test:is(strtab_offset, EXPECTED_STRTAB_OFFSET, 'check .strtab offset') >> >> -local strtab_str = string.sub(elf_content, strtab_offset, strtab_offset + strtab_size) >> +local strtab_str = string.sub(elf_content, strtab_offset, >> + strtab_offset + strtab_size) >> >> local strtab_p = ffi.cast('char *', strtab_str) >> local sym_is_found = false >> diff --git a/test/tarantool-tests/lj-494-table-chain-infinite-loop.test.lua b/test/tarantool-tests/lj-494-table-chain-infinite-loop.test.lua >> index 3dd17e7a..1c1d7128 100644 >> --- a/test/tarantool-tests/lj-494-table-chain-infinite-loop.test.lua >> +++ b/test/tarantool-tests/lj-494-table-chain-infinite-loop.test.lua >> @@ -172,6 +172,7 @@ collectgarbage() >> for c, v in pairs(victims) do >> str_hash(v)[0] = orig_hash[c] >> end >> -test:ok(true, "table keys collisions are resolved properly (no assertions failed)") >> +test:ok(true, >> + "table keys collisions are resolved properly (no assertions failed)") >> >> test:done(true) >> diff --git a/test/tarantool-tests/lj-688-snap-ir-rename.test.lua b/test/tarantool-tests/lj-688-snap-ir-rename.test.lua >> index 807e0811..5b458cd0 100644 >> --- a/test/tarantool-tests/lj-688-snap-ir-rename.test.lua >> +++ b/test/tarantool-tests/lj-688-snap-ir-rename.test.lua >> @@ -41,7 +41,9 @@ jit.opt.start('hotloop=1') >> -- platform-agnostic, there is no real necessity to test it >> -- against ARM/ARM64 separately. >> -- >> +-- luacheck: push no max comment line length > Side note: Can it will be done without push/pop interface? Like for > globals we use: > | luacheck: no global > >> -- See alsohttps://drive.google.com/file/d/1iYkFx3F0DOtB9o9ykWfCEm-OdlJNCCL0/view?usp=share_link >> +-- luacheck: pop >> >> >> local vals = {-0.1, 0.1, -0.1, 0.1} >> diff --git a/test/tarantool-tests/lj-819-fix-missing-uclo.test.lua b/test/tarantool-tests/lj-819-fix-missing-uclo.test.lua >> index e2352c92..43a65eb8 100644 >> --- a/test/tarantool-tests/lj-819-fix-missing-uclo.test.lua >> +++ b/test/tarantool-tests/lj-819-fix-missing-uclo.test.lua >> @@ -100,7 +100,8 @@ local f = missing_uclo() >> local res = f() >> -- Without a patch we don't get here a function, because upvalue isn't closed >> -- as desirable. >> -test:ok(type(res) == 'function', 'virtual machine consistency: type of returned value is correct') >> +test:ok(type(res) == 'function', >> + 'virtual machine consistency: type of returned value is correct') >> >> -- Make JIT compiler aggressive. >> jit.opt.start('hotloop=1') >> @@ -110,6 +111,7 @@ f() >> f = missing_uclo() >> local _ >> _, res = pcall(f) >> -test:ok(type(res) == 'function', 'consistency on compilation: type of returned value is correct') >> +test:ok(type(res) == 'function', >> + 'consistency on compilation: type of returned value is correct') >> >> test:done(true) >> diff --git a/test/tarantool-tests/lj-918-fma-numerical-accuracy-jit.test.lua b/test/tarantool-tests/lj-918-fma-numerical-accuracy-jit.test.lua >> index 8b16d4c3..43c1a4a9 100644 >> --- a/test/tarantool-tests/lj-918-fma-numerical-accuracy-jit.test.lua >> +++ b/test/tarantool-tests/lj-918-fma-numerical-accuracy-jit.test.lua >> @@ -22,9 +22,13 @@ local _2pow52 = 2 ^ 52 >> -- double rounding. The numbers from the original issue are good >> -- enough. >> -- >> +-- luacheck: push no max comment line length > Side note: Can it will be done without push/pop interface? Like for > globals we use: > | luacheck: no global > >> +-- >> -- [1]:https://developer.arm.com/documentation/dui0801/g/A64-Floating-point-Instructions/FMSUB >> -- [2]:https://en.wikipedia.org/wiki/Multiply%E2%80%93accumulate_operation >> -- >> +-- luacheck: pop >> +-- >> -- IEEE754 components to double: >> -- sign * (2 ^ (exp - 1023)) * (mantissa / _2pow52 + normal). >> local a = 1 * (2 ^ (1083 - 1023)) * (4080546448249347 / _2pow52 + 1) >> diff --git a/test/tarantool-tests/lj-918-fma-numerical-accuracy.test.lua b/test/tarantool-tests/lj-918-fma-numerical-accuracy.test.lua >> index 25b59707..2472f05a 100644 >> --- a/test/tarantool-tests/lj-918-fma-numerical-accuracy.test.lua >> +++ b/test/tarantool-tests/lj-918-fma-numerical-accuracy.test.lua >> @@ -20,9 +20,13 @@ local _2pow52 = 2 ^ 52 >> -- double rounding. The numbers from the original issue are good >> -- enough. >> -- >> +-- luacheck: push no max comment line length > Side note: Can it will be done without push/pop interface? Like for > globals we use: > | luacheck: no global > >> +-- >> -- [1]:https://developer.arm.com/documentation/dui0801/g/A64-Floating-point-Instructions/FMSUB >> -- [2]:https://en.wikipedia.org/wiki/Multiply%E2%80%93accumulate_operation >> -- >> +-- luacheck: pop >> +-- >> -- IEEE754 components to double: >> -- sign * (2 ^ (exp - 1023)) * (mantissa / _2pow52 + normal). >> local a = 1 * (2 ^ (1083 - 1023)) * (4080546448249347 / _2pow52 + 1) >> diff --git a/test/tarantool-tests/or-144-gc64-asmref-l.test.lua b/test/tarantool-tests/or-144-gc64-asmref-l.test.lua >> index 18c6efb2..cbc13278 100644 >> --- a/test/tarantool-tests/or-144-gc64-asmref-l.test.lua >> +++ b/test/tarantool-tests/or-144-gc64-asmref-l.test.lua >> @@ -5,11 +5,15 @@ local test = tap.test('or-144-gc64-asmref-l'):skipcond({ >> >> test:plan(1) >> >> +-- luacheck: push no max comment line length >> +-- >> -- Test file to demonstrate LuaJIT `IR_LREF` assembling incorrect >> -- behaviour. >> -- See also: >> -- *https://github.com/openresty/lua-resty-core/issues/144. >> -- *https://www.freelists.org/post/luajit/Consistent-SEGV-on-x64-with-the-latest-LuaJIT-v21-GC64-mode. >> +-- >> +-- luacheck: pop >> >> jit.opt.start('hotloop=1') >> >> -- >> 2.34.1 >> --------------EXxys29NUiXFr5veFGgP5Z1X Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit

Hi, Sergey

thanks for review! Please see my comments.

On 11.02.2025 14:51, Sergey Kaplun via Tarantool-patches wrote:
Hi, Sergey!
Thanks for the patch!
It's a nice idea to automate this part of the review!

Please consider my questions below.

On 11.02.25, Sergey Bronnikov wrote:
The patch sets a max length with 80 symbols and fixes tests
exceeding this length.
---
Branch: https://github.com/tarantool/luajit/tree/ligurio/gh-xxxx-set-max-length
Luacheck configuration file:
https://luacheck.readthedocs.io/en/stable/config.html

 .luacheckrc                                            |  5 +++++
 test/tarantool-tests/fix-argv-handling.test.lua        |  4 ++++
 .../gh-3196-incorrect-string-length.test.lua           |  3 +++
 test/tarantool-tests/gh-6163-min-max.test.lua          |  4 ++++
 .../lj-366-strtab-correct-size.test.lua                | 10 ++++++++--
 .../lj-494-table-chain-infinite-loop.test.lua          |  3 ++-
 test/tarantool-tests/lj-688-snap-ir-rename.test.lua    |  2 ++
 test/tarantool-tests/lj-819-fix-missing-uclo.test.lua  |  6 ++++--
 .../lj-918-fma-numerical-accuracy-jit.test.lua         |  4 ++++
 .../lj-918-fma-numerical-accuracy.test.lua             |  4 ++++
 test/tarantool-tests/or-144-gc64-asmref-l.test.lua     |  4 ++++
 11 files changed, 44 insertions(+), 5 deletions(-)

diff --git a/.luacheckrc b/.luacheckrc
index f2573e42..8047677c 100644
--- a/.luacheckrc
+++ b/.luacheckrc
@@ -3,6 +3,11 @@ std = 'luajit'
 -- This fork also introduces a new global for misc API namespace.
 read_globals = { 'misc' }
 
+max_line_length = 80
I suppose this is excess since we have all other settings intact.
Removed.

+max_code_line_length = 80
+max_string_line_length = 80
Do we need this particular check? Maybe it is covered by the
`max_code_line_length` and `max_line_length`. Can we avoid markers in
<gh-3196-incorrect-string-length.test.lua> without it?

+max_comment_line_length = 80
Actually, the comment length for the Lua part is 66 symbols. Maybe we
may omit this check to avoid stubs in the comments?

The main idea is automating this check and avoid comments like

"your comment is exceeded XXX symbols" on review. So I don't understand

how to omit this check.

BTW luacheck with "max_comment_line_length = 66" reports 89 warnings, it means

that manual (visual) checking of max length in comments is unreliable and we definitely

should automate it.


+
 -- The `_TARANTOOL` global is often used for skip condition
 -- checks in tests.
 files['test/tarantool-tests/'] = {
diff --git a/test/tarantool-tests/fix-argv-handling.test.lua b/test/tarantool-tests/fix-argv-handling.test.lua
index 84b626c3..5f147197 100644
--- a/test/tarantool-tests/fix-argv-handling.test.lua
+++ b/test/tarantool-tests/fix-argv-handling.test.lua
@@ -10,7 +10,11 @@ test:plan(1)
 -- to a single empty string if it is empty [1], so the issue is
 -- not reproducible on new kernels.
 --
+-- luacheck: push no max comment line length
Side note: Can it will be done without push/pop interface? Like for
globals we use:
| luacheck: no global

AFAIR, no. Global suppression will cover the whole file, I don't think

it is a good idea. Approach with push/pop was already used in

commit 9ac79bd7cd12dc3dbfa0e502e29a99b3083676c1
 ("test: introduce test:done TAP helper") why we cannot continue using this approach for other files?


+--
 -- [1]: https://lore.kernel.org/all/20220201000947.2453721-1-keescook@chromium.org/
+--
+-- luacheck: pop
 
 local utils = require('utils')
 local execlib = require('execlib')
diff --git a/test/tarantool-tests/gh-3196-incorrect-string-length.test.lua b/test/tarantool-tests/gh-3196-incorrect-string-length.test.lua
index b82029f6..79521608 100644
--- a/test/tarantool-tests/gh-3196-incorrect-string-length.test.lua
+++ b/test/tarantool-tests/gh-3196-incorrect-string-length.test.lua
@@ -6,10 +6,13 @@ test:plan(2)
 --
 -- gh-3196: incorrect string length if Lua hash returns 0
 --
+-- luacheck: push no max code line length
Side note: Can it will be done without push/pop interface? Like for
globals we use:
| luacheck: no global
See above.

      
+--
 local h = "\x1F\x93\xE2\x1C\xCA\xDE\x28\x08\x26\x01\xED\x0A\x2F\xE4\x21\x02\x97\x77\xD9\x3E"
 test:is(h:len(), 20)
 
 h = "\x0F\x93\xE2\x1C\xCA\xDE\x28\x08\x26\x01\xED\x0A\x2F\xE4\x21\x02\x97\x77\xD9\x3E"
 test:is(h:len(), 20)
+-- luacheck: pop
 
 test:done(true)
diff --git a/test/tarantool-tests/gh-6163-min-max.test.lua b/test/tarantool-tests/gh-6163-min-max.test.lua
index e3efd1a4..ca6c2a7f 100644
--- a/test/tarantool-tests/gh-6163-min-max.test.lua
+++ b/test/tarantool-tests/gh-6163-min-max.test.lua
@@ -69,9 +69,13 @@ jit.opt.start('hotloop=1')
 -- pair is emitted, and the result is `NaN`, which is inconsistent with
 -- the result of the non-optimized mcode.
 --
+-- luacheck: push no max comment line length
Side note: Can it will be done without push/pop interface? Like for
globals we use:
| luacheck: no global

+--
 -- [1]: https://developer.arm.com/documentation/dui0801/g/A64-Floating-point-Instructions/FCMP
 -- [2]: https://developer.arm.com/documentation/100069/0608/A64-Floating-point-Instructions/FCSEL
 -- [3]: https://developer.arm.com/documentation/dui0068/b/ARM-Instruction-Reference/Conditional-execution
+--
+-- luacheck: pop
 
 local result = {}
 for k = 1, 4 do
diff --git a/test/tarantool-tests/lj-366-strtab-correct-size.test.lua b/test/tarantool-tests/lj-366-strtab-correct-size.test.lua
index a20339e5..b46ace49 100644
--- a/test/tarantool-tests/lj-366-strtab-correct-size.test.lua
+++ b/test/tarantool-tests/lj-366-strtab-correct-size.test.lua
@@ -22,11 +22,15 @@ local utils = require('utils')
 --
 -- $ readelf --symbols xxx.obj
 --
+-- luacheck: push no max comment line length
+--
 -- Symbol table '.symtab' contains 2 entries:
 --    Num:    Value          Size Type    Bind   Vis      Ndx Name
 --      0: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT  UND
 --      1: 0000000000000000    66 OBJECT  GLOBAL DEFAULT    4 luaJIT_BC_lango_team
 --
+-- luacheck: pop
+--
 -- and to display the information contained in the file's section
 -- headers, if it has any. For our purposes, we are interested in
 -- .symtab section, so other sections are snipped in the output:
@@ -143,7 +147,8 @@ end
 -- and symtab sections.
 local function read_elf(elf_content)
   local ELFobj_type = ffi.typeof(is64 and 'ELF64obj *' or 'ELF32obj *')
-  local ELFsectheader_type = ffi.typeof(is64 and 'ELF64sectheader *' or 'ELF32sectheader *')
+  local ELFsectheader_type = ffi.typeof(is64 and 'ELF64sectheader *' or
+                                        'ELF32sectheader *')
   local elf = ffi.cast(ELFobj_type, elf_content)
   local symtab_hdr, strtab_hdr
   -- Iterate by section headers.
@@ -178,7 +183,8 @@ assert(sym_cnt ~= 0, 'number of symbols is zero')
 test:is(strtab_size, EXPECTED_STRTAB_SIZE, 'check .strtab size')
 test:is(strtab_offset, EXPECTED_STRTAB_OFFSET, 'check .strtab offset')
 
-local strtab_str = string.sub(elf_content, strtab_offset, strtab_offset + strtab_size)
+local strtab_str = string.sub(elf_content, strtab_offset,
+                              strtab_offset + strtab_size)
 
 local strtab_p = ffi.cast('char *', strtab_str)
 local sym_is_found = false
diff --git a/test/tarantool-tests/lj-494-table-chain-infinite-loop.test.lua b/test/tarantool-tests/lj-494-table-chain-infinite-loop.test.lua
index 3dd17e7a..1c1d7128 100644
--- a/test/tarantool-tests/lj-494-table-chain-infinite-loop.test.lua
+++ b/test/tarantool-tests/lj-494-table-chain-infinite-loop.test.lua
@@ -172,6 +172,7 @@ collectgarbage()
 for c, v in pairs(victims) do
     str_hash(v)[0] = orig_hash[c]
 end
-test:ok(true, "table keys collisions are resolved properly (no assertions failed)")
+test:ok(true,
+        "table keys collisions are resolved properly (no assertions failed)")
 
 test:done(true)
diff --git a/test/tarantool-tests/lj-688-snap-ir-rename.test.lua b/test/tarantool-tests/lj-688-snap-ir-rename.test.lua
index 807e0811..5b458cd0 100644
--- a/test/tarantool-tests/lj-688-snap-ir-rename.test.lua
+++ b/test/tarantool-tests/lj-688-snap-ir-rename.test.lua
@@ -41,7 +41,9 @@ jit.opt.start('hotloop=1')
 -- platform-agnostic, there is no real necessity to test it
 -- against ARM/ARM64 separately.
 --
+-- luacheck: push no max comment line length
Side note: Can it will be done without push/pop interface? Like for
globals we use:
| luacheck: no global

 -- See also https://drive.google.com/file/d/1iYkFx3F0DOtB9o9ykWfCEm-OdlJNCCL0/view?usp=share_link
+-- luacheck: pop
 
 
 local vals = {-0.1, 0.1, -0.1, 0.1}
diff --git a/test/tarantool-tests/lj-819-fix-missing-uclo.test.lua b/test/tarantool-tests/lj-819-fix-missing-uclo.test.lua
index e2352c92..43a65eb8 100644
--- a/test/tarantool-tests/lj-819-fix-missing-uclo.test.lua
+++ b/test/tarantool-tests/lj-819-fix-missing-uclo.test.lua
@@ -100,7 +100,8 @@ local f = missing_uclo()
 local res = f()
 -- Without a patch we don't get here a function, because upvalue isn't closed
 -- as desirable.
-test:ok(type(res) == 'function', 'virtual machine consistency: type of returned value is correct')
+test:ok(type(res) == 'function',
+        'virtual machine consistency: type of returned value is correct')
 
 -- Make JIT compiler aggressive.
 jit.opt.start('hotloop=1')
@@ -110,6 +111,7 @@ f()
 f = missing_uclo()
 local _
 _, res = pcall(f)
-test:ok(type(res) == 'function', 'consistency on compilation: type of returned value is correct')
+test:ok(type(res) == 'function',
+        'consistency on compilation: type of returned value is correct')
 
 test:done(true)
diff --git a/test/tarantool-tests/lj-918-fma-numerical-accuracy-jit.test.lua b/test/tarantool-tests/lj-918-fma-numerical-accuracy-jit.test.lua
index 8b16d4c3..43c1a4a9 100644
--- a/test/tarantool-tests/lj-918-fma-numerical-accuracy-jit.test.lua
+++ b/test/tarantool-tests/lj-918-fma-numerical-accuracy-jit.test.lua
@@ -22,9 +22,13 @@ local _2pow52 = 2 ^ 52
 -- double rounding. The numbers from the original issue are good
 -- enough.
 --
+-- luacheck: push no max comment line length
Side note: Can it will be done without push/pop interface? Like for
globals we use:
| luacheck: no global

+--
 -- [1]:https://developer.arm.com/documentation/dui0801/g/A64-Floating-point-Instructions/FMSUB
 -- [2]:https://en.wikipedia.org/wiki/Multiply%E2%80%93accumulate_operation
 --
+-- luacheck: pop
+--
 -- IEEE754 components to double:
 -- sign * (2 ^ (exp - 1023)) * (mantissa / _2pow52 + normal).
 local a = 1 * (2 ^ (1083 - 1023)) * (4080546448249347 / _2pow52 + 1)
diff --git a/test/tarantool-tests/lj-918-fma-numerical-accuracy.test.lua b/test/tarantool-tests/lj-918-fma-numerical-accuracy.test.lua
index 25b59707..2472f05a 100644
--- a/test/tarantool-tests/lj-918-fma-numerical-accuracy.test.lua
+++ b/test/tarantool-tests/lj-918-fma-numerical-accuracy.test.lua
@@ -20,9 +20,13 @@ local _2pow52 = 2 ^ 52
 -- double rounding. The numbers from the original issue are good
 -- enough.
 --
+-- luacheck: push no max comment line length
Side note: Can it will be done without push/pop interface? Like for
globals we use:
| luacheck: no global

+--
 -- [1]:https://developer.arm.com/documentation/dui0801/g/A64-Floating-point-Instructions/FMSUB
 -- [2]:https://en.wikipedia.org/wiki/Multiply%E2%80%93accumulate_operation
 --
+-- luacheck: pop
+--
 -- IEEE754 components to double:
 -- sign * (2 ^ (exp - 1023)) * (mantissa / _2pow52 + normal).
 local a = 1 * (2 ^ (1083 - 1023)) * (4080546448249347 / _2pow52 + 1)
diff --git a/test/tarantool-tests/or-144-gc64-asmref-l.test.lua b/test/tarantool-tests/or-144-gc64-asmref-l.test.lua
index 18c6efb2..cbc13278 100644
--- a/test/tarantool-tests/or-144-gc64-asmref-l.test.lua
+++ b/test/tarantool-tests/or-144-gc64-asmref-l.test.lua
@@ -5,11 +5,15 @@ local test = tap.test('or-144-gc64-asmref-l'):skipcond({
 
 test:plan(1)
 
+-- luacheck: push no max comment line length
+--
 -- Test file to demonstrate LuaJIT `IR_LREF` assembling incorrect
 -- behaviour.
 -- See also:
 -- * https://github.com/openresty/lua-resty-core/issues/144.
 -- * https://www.freelists.org/post/luajit/Consistent-SEGV-on-x64-with-the-latest-LuaJIT-v21-GC64-mode.
+--
+-- luacheck: pop
 
 jit.opt.start('hotloop=1')
 
-- 
2.34.1


    
--------------EXxys29NUiXFr5veFGgP5Z1X--