aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt6
-rw-r--r--README.md5
-rw-r--r--ci/build.ps13
-rw-r--r--src/nvim/testdir/test_timers.vim5
-rw-r--r--test/functional/eval/timer_spec.lua6
-rw-r--r--test/functional/terminal/window_split_tab_spec.lua14
6 files changed, 26 insertions, 13 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index fa020bf55c..5dab760ae3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -368,7 +368,7 @@ include_directories(SYSTEM ${MSGPACK_INCLUDE_DIRS})
option(PREFER_LUA "Prefer Lua over LuaJIT in the nvim executable." OFF)
if(PREFER_LUA)
- find_package(Lua REQUIRED)
+ find_package(Lua 5.1 EXACT REQUIRED)
set(LUA_PREFERRED_INCLUDE_DIRS ${LUA_INCLUDE_DIR})
set(LUA_PREFERRED_LIBRARIES ${LUA_LIBRARIES})
# Passive (not REQUIRED): if LUAJIT_FOUND is not set, nvim-test is skipped.
@@ -414,7 +414,7 @@ if(FEAT_TUI)
add_definitions(-DNVIM_UNIBI_HAS_VAR_FROM)
endif()
- find_package(LibTermkey REQUIRED)
+ find_package(LibTermkey 0.18 REQUIRED)
include_directories(SYSTEM ${LIBTERMKEY_INCLUDE_DIRS})
endif()
@@ -422,7 +422,7 @@ find_package(LibVterm REQUIRED)
include_directories(SYSTEM ${LIBVTERM_INCLUDE_DIRS})
if(WIN32)
- find_package(Winpty REQUIRED)
+ find_package(Winpty 0.4.3 REQUIRED)
include_directories(SYSTEM ${WINPTY_INCLUDE_DIRS})
endif()
diff --git a/README.md b/README.md
index fe78cdd522..fd89456a96 100644
--- a/README.md
+++ b/README.md
@@ -59,7 +59,10 @@ To list all targets:
cmake --build build --target help
-To skip "bundled" (`third-party/*`) dependencies, define `USE_BUNDLED=NO`.
+To skip "bundled" dependencies (`third-party/*`) define `USE_BUNDLED=NO`:
+
+ sudo apt install gperf libluajit-5.1-dev libunibilium-dev libmsgpack-dev libtermkey-dev libvterm-dev libjemalloc-dev
+ make USE_BUNDLED=NO
See the [Building Neovim](https://github.com/neovim/neovim/wiki/Building-Neovim) wiki page for details.
diff --git a/ci/build.ps1 b/ci/build.ps1
index 5b3eb4d27d..7097da8c32 100644
--- a/ci/build.ps1
+++ b/ci/build.ps1
@@ -50,6 +50,9 @@ if ($compiler -eq 'MINGW') {
# Add MinGW to the PATH
$env:PATH = "C:\msys64\mingw$bits\bin;$env:PATH"
+ # Avoid pacman "warning" which causes non-zero return code. https://github.com/open62541/open62541/issues/2068
+ & C:\msys64\usr\bin\mkdir -p /var/cache/pacman/pkg
+
# Build third-party dependencies
C:\msys64\usr\bin\bash -lc "pacman --verbose --noconfirm -Su" ; exitIfFailed
C:\msys64\usr\bin\bash -lc "pacman --verbose --noconfirm --needed -S $mingwPackages" ; exitIfFailed
diff --git a/src/nvim/testdir/test_timers.vim b/src/nvim/testdir/test_timers.vim
index da61751bf4..8a3e57bb02 100644
--- a/src/nvim/testdir/test_timers.vim
+++ b/src/nvim/testdir/test_timers.vim
@@ -44,7 +44,7 @@ func Test_repeat_many()
let timer = timer_start(50, 'MyHandler', {'repeat': -1})
sleep 200m
call timer_stop(timer)
- call assert_inrange(2, 4, g:val)
+ call assert_inrange((has('mac') ? 1 : 2), 4, g:val)
endfunc
func Test_with_partial_callback()
@@ -167,6 +167,9 @@ func Test_stop_all_in_callback()
let g:timer1 = timer_start(10, 'StopTimerAll')
let info = timer_info()
call assert_equal(1, len(info))
+ if has('mac')
+ sleep 100m
+ endif
sleep 40m
let info = timer_info()
call assert_equal(0, len(info))
diff --git a/test/functional/eval/timer_spec.lua b/test/functional/eval/timer_spec.lua
index c945f12e0e..d6fba112f1 100644
--- a/test/functional/eval/timer_spec.lua
+++ b/test/functional/eval/timer_spec.lua
@@ -82,7 +82,7 @@ describe('timers', function()
run(nil, nil, nil, 300)
feed("c")
local count = eval("g:val")
- assert(count >= 4, 'expected count >= 4, got: '..tostring(count))
+ assert(count >= 3, 'expected count >= 3, got: '..tostring(count))
eq(99, eval("g:c"))
end)
@@ -144,8 +144,8 @@ describe('timers', function()
local count2 = eval("g:val")
-- when count is eval:ed after timer_stop this should be non-racy
eq(count, count2)
- assert(4 <= count and count <= 7,
- 'expected (4 <= count <= 7), got: '..tostring(count))
+ assert(3 <= count and count <= 7,
+ 'expected (3 <= count <= 7), got: '..tostring(count))
end)
it('can be stopped from the handler', function()
diff --git a/test/functional/terminal/window_split_tab_spec.lua b/test/functional/terminal/window_split_tab_spec.lua
index 07cc8020a5..b8d5e6d43f 100644
--- a/test/functional/terminal/window_split_tab_spec.lua
+++ b/test/functional/terminal/window_split_tab_spec.lua
@@ -7,6 +7,7 @@ local command = helpers.command
local eq = helpers.eq
local eval = helpers.eval
local iswin = helpers.iswin
+local retry = helpers.retry
describe('terminal', function()
local screen
@@ -68,16 +69,19 @@ describe('terminal', function()
it('forwards resize request to the program', function()
feed([[<C-\><C-N>:]]) -- Go to cmdline-mode, so cursor is at bottom.
- screen:try_resize(screen._width - 3, screen._height - 2)
if iswin() then
- -- win: less-precise test, SIGWINCH is noisy there. #7506
- screen:expect{any='rows: 7, cols: 47'}
- screen:try_resize(screen._width - 6, screen._height - 3)
- screen:expect{any='rows: 4, cols: 41'}
+ retry(3, nil, function()
+ -- win: SIGWINCH is unreliable. #7506
+ screen:try_resize(screen._width - 3, screen._height - 2)
+ screen:expect{any='rows: 7, cols: 47'}
+ screen:try_resize(screen._width - 6, screen._height - 3)
+ screen:expect{any='rows: 4, cols: 41'}
+ end)
return
end
+ screen:try_resize(screen._width - 3, screen._height - 2)
screen:expect([[
tty ready |
rows: 7, cols: 47 |