99 lines
1.8 KiB
Lua
99 lines
1.8 KiB
Lua
-- SPDX-License-Identifier: GPL-3.0-or-later
|
|
std = 'luajit'
|
|
new_read_globals = {
|
|
'cache',
|
|
'eval_cmd',
|
|
'event',
|
|
'help',
|
|
'_hint_root_file',
|
|
'hostname',
|
|
'map',
|
|
'modules',
|
|
'net',
|
|
'package_version',
|
|
'quit',
|
|
'resolve',
|
|
'ta_update',
|
|
'fromjson',
|
|
'todname',
|
|
'tojson',
|
|
'user',
|
|
'worker',
|
|
'kluautil_list_dir',
|
|
-- Sandbox declarations
|
|
'kB',
|
|
'MB',
|
|
'GB',
|
|
'sec',
|
|
'second',
|
|
'minute',
|
|
'min',
|
|
'hour',
|
|
'day',
|
|
'panic',
|
|
'log',
|
|
'log_error',
|
|
'log_warn',
|
|
'log_info',
|
|
'log_debug',
|
|
'log_fmt',
|
|
'log_qry',
|
|
'log_req',
|
|
'log_level',
|
|
'log_target',
|
|
'log_groups',
|
|
'LOG_CRIT',
|
|
'LOG_ERR',
|
|
'LOG_WARNING',
|
|
'LOG_NOTICE',
|
|
'LOG_INFO',
|
|
'LOG_DEBUG',
|
|
'mode',
|
|
'reorder_RR',
|
|
'option',
|
|
'env',
|
|
'debugging',
|
|
'kres',
|
|
'libknot_SONAME',
|
|
'libzscanner_SONAME',
|
|
'table_print',
|
|
'_ENV',
|
|
}
|
|
|
|
new_globals = {
|
|
-- Modules are allowed to be set and accessed from global namespace
|
|
'policy',
|
|
'view',
|
|
'stats',
|
|
'http',
|
|
'trust_anchors',
|
|
'bogus_log',
|
|
}
|
|
|
|
-- Luacheck < 0.18 doesn't support new_read_globals
|
|
for _, v in ipairs(new_read_globals) do
|
|
table.insert(new_globals, v)
|
|
end
|
|
|
|
exclude_files = {
|
|
'modules/policy/lua-aho-corasick', -- Vendored
|
|
'tests/config/tapered',
|
|
'build*/**', -- build outputs
|
|
'pkg/**', -- packaging outputs
|
|
}
|
|
|
|
-- Ignore some pedantic checks
|
|
ignore = {
|
|
'4.1/err', -- Shadowing err
|
|
'4.1/.', -- Shadowing one letter variables
|
|
}
|
|
|
|
-- Sandbox can set global variables
|
|
files['**/daemon/lua'].ignore = {'111', '121', '122'}
|
|
files['**/daemon/lua/kres-gen-*.lua'].ignore = {'631'} -- Allow overly long lines
|
|
-- Tests and scripts can use global variables
|
|
files['scripts'].ignore = {'111', '112', '113'}
|
|
files['tests'].ignore = {'111', '112', '113'}
|
|
files['**/utils/upgrade'].ignore = {'111', '112', '113'}
|
|
files['**/modules/**/*.test.lua'].ignore = {'111', '112', '113', '121', '122'}
|
|
files['**/daemon/**/*.test.lua'].ignore = {'111', '112', '113', '121', '122'}
|