patch 8.2.4243: Lua tests fail with Lua 5.4.4
Problem: Lua tests fail with Lua 5.4.4.
Solution: Check messages like before Lua 5.4.3. (Jakub KulĂk, closes #9652)
diff --git a/src/testdir/test_lua.vim b/src/testdir/test_lua.vim
index dd493fe..fd265ef 100644
--- a/src/testdir/test_lua.vim
+++ b/src/testdir/test_lua.vim
@@ -15,13 +15,11 @@
" Depending on the lua version, the error messages are different.
let [s:major, s:minor, s:patch] = luaeval('vim.lua_version')->split('\.')->map({-> str2nr(v:val)})
let s:lua_53_or_later = 0
-let s:lua_543_or_later = 0
+let s:lua_543 = 0
if (s:major == 5 && s:minor >= 3) || s:major > 5
let s:lua_53_or_later = 1
- if (s:major == 5
- \ && ((s:minor == 4 && s:patch >= 3) || s:minor > 4))
- \ || s:major > 5
- let s:lua_543_or_later = 1
+ if s:major == 5 && s:minor == 4 && s:patch == 3
+ let s:lua_543 = 1
endif
endif
@@ -59,7 +57,7 @@
" Error cases
call assert_fails('luado string.format()',
\ "[string \"vim chunk\"]:1: bad argument #1 to 'format' (string expected, got no value)")
- if s:lua_543_or_later
+ if s:lua_543
let msg = "[string \"vim chunk\"]:1: global 'func' is not callable (a nil value)"
elseif s:lua_53_or_later
let msg = "[string \"vim chunk\"]:1: attempt to call a nil value (global 'func')"
@@ -151,7 +149,7 @@
" Window 3 does not exist so vim.window(3) should return nil
call assert_equal('nil', luaeval('tostring(vim.window(3))'))
- if s:lua_543_or_later
+ if s:lua_543
let msg = "[string \"luaeval\"]:1: field 'xyz' is not callable (a nil value)"
elseif s:lua_53_or_later
let msg = "[string \"luaeval\"]:1: attempt to call a nil value (field 'xyz')"
@@ -343,7 +341,7 @@
call assert_equal('4', luaeval('vim.buffer()[4]'))
call assert_equal(v:null, luaeval('vim.buffer()[5]'))
call assert_equal(v:null, luaeval('vim.buffer()[{}]'))
- if s:lua_543_or_later
+ if s:lua_543
let msg = "[string \"vim chunk\"]:1: method 'xyz' is not callable (a nil value)"
elseif s:lua_53_or_later
let msg = "[string \"vim chunk\"]:1: attempt to call a nil value (method 'xyz')"
@@ -454,7 +452,7 @@
lua ll = vim.eval('l')
let x = luaeval("ll[3]")
call assert_equal(v:null, x)
- if s:lua_543_or_later
+ if s:lua_543
let msg = "[string \"luaeval\"]:1: method 'xyz' is not callable (a nil value)"
elseif s:lua_53_or_later
let msg = "[string \"luaeval\"]:1: attempt to call a nil value (method 'xyz')"
@@ -645,7 +643,7 @@
call assert_equal(2, n)
let n = luaeval('lb[6]')
call assert_equal(v:null, n)
- if s:lua_543_or_later
+ if s:lua_543
let msg = "[string \"luaeval\"]:1: method 'xyz' is not callable (a nil value)"
elseif s:lua_53_or_later
let msg = "[string \"luaeval\"]:1: attempt to call a nil value (method 'xyz')"
diff --git a/src/version.c b/src/version.c
index 882fb0b..400f578 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 4243,
+/**/
4242,
/**/
4241,