Closed TheNyneR closed 1 year ago
This seems to be related to the portage package manager.
I tried rebooting and could run make
in the git repository.
However after trying to install my package from the package manager the tests no longer work even in the git repository. It seems like the package manager changes something with neovims behavior.
I'll close this issue, since it the problem is not caused by plenary.
Hey there. I'm trying to package plenary on gentoo and struggling to get the makefile to work. All the tests seem to pass successfully but the exit code is non-zero.
I pulled the current commit (253d34830709d690f013daf2853a9d21ad7accab) and ran
make
.make output
``` make nvim --headless --noplugin -u scripts/minimal.vim -c "PlenaryBustedDirectory tests/plenary/ {minimal_init = 'tests/minimal_init.vim'}" Starting...Scheduling: tests/plenary/json_spec.lua Scheduling: tests/plenary/job_spec.lua Scheduling: tests/plenary/simple_busted_spec.lua Scheduling: tests/plenary/popup_requires_spec.lua Scheduling: tests/plenary/rotate_spec.lua Scheduling: tests/plenary/async/condvar_spec.lua Scheduling: tests/plenary/async/deque_spec.lua Scheduling: tests/plenary/async/util_spec.lua Scheduling: tests/plenary/async/test_spec.lua Scheduling: tests/plenary/async/async_spec.lua Scheduling: tests/plenary/async/channel_spec.lua Scheduling: tests/plenary/async/semaphore_spec.lua Scheduling: tests/plenary/enum_spec.lua Scheduling: tests/plenary/py_list_spec.lua Scheduling: tests/plenary/path_spec.lua Scheduling: tests/plenary/context_manager_spec.lua Scheduling: tests/plenary/uses_nvim_spec.lua Scheduling: tests/plenary/filetype_spec.lua Scheduling: tests/plenary/job/validation_spec.lua Scheduling: tests/plenary/tbl_spec.lua Scheduling: tests/plenary/popup_spec.lua Scheduling: tests/plenary/curl_spec.lua Scheduling: tests/plenary/scandir_spec.lua Scheduling: tests/plenary/iterators_spec.lua Scheduling: tests/plenary/strings_spec.lua Scheduling: tests/plenary/async_testing_spec.lua ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/py_list_spec.lua Success || List should detect whether a value is an instance of List Success || List should be equal if all elements are equal Success || List can be concatenated to other list-like tables Success || List can create a copy of itself with equal elements Success || List can create a slice between two indices Success || List can reverse itself in place Success || List can push elements to itself Success || List can pop the n-th element from itself (last one by default) Success || List can create a list from an iterable Success || List can be partitioned based on a predicate Success: 10 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/enum_spec.lua Success || Enum should be able to define specific values for members Success || Enum should compare with itself Success || Enum should error when accessing invalid field Success || Enum should fail if there is name or index clashing Success || Enum should fail if there is a key that starts with lowercase Success: 5 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/async/semaphore_spec.lua Success || semaphore should validate arguments Success || semaphore should acquire a permit if available Success || semaphore should block if no permit is available Success || semaphore should give another permit when an acquired permit is released Success || semaphore should permit the next waiting client when a permit is released Success: 5 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/async/async_spec.lua Success || async void functions can call wrapped functions Success || async void functions can call wrapped functions with ignored arguments Success: 2 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/async/deque_spec.lua Success || deque should allow pushing and popping and finding len Success || deque should be able to iterate from left Success || deque should be able to iterate from right Success || deque should allow clearing Success: 4 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/async/condvar_spec.lua Success || condvar should allow blocking Success || condvar should be able to notify one when running Success || condvar should allow notify_one to work when using await_all Success || condvar should notify_all Success: 4 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/rotate_spec.lua Success || rotate should rotate varargs Success || rotate should rotate none Success || rotate should rotate one Success: 3 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/popup_requires_spec.lua Success || plenary.popup should match these kinds of patterns Success || plenary.popup must not require anything other than Window and Border from plenary Success: 2 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/simple_busted_spec.lua Success || busted specs nested should work Success || busted specs should not nest Success || busted specs should not fail unless we unpcall this Pending || busted specs other thing pending Success || before each is not cleared Success || before each nested should clear a but not b Success || before each nested nested nested should clear b as well Success || before each nested should only clear a Success || before each should clear nothing Success || after each is not cleared Success || after each nested should not clear any at this point Success || after each nested nested nested should have cleared a Success || after each nested should have cleared a and b Success || after each should only have cleared a Success || fourth top level describe test should work Success: 14 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/json_spec.lua Success || json replace comments with whitespace Success || json remove comments Success || json doesn't strip comments inside strings Success || json consider escaped slashes when checking for escaped string quote Success || json line endings - no comments Success || json line endings - single line comment Success || json line endings - single line block comment Success || json line endings - multi line block comment Success || json line endings - works at EOF Success || json handles weird escaping Success: 10 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/job/validation_spec.lua Success || Job Validation does not require command when called with array method Success || Job Validation cannot use command and array syntax Success || Job Validation can parse command and args from array syntax Success || Job Validation can parse command and multiple args from array syntax Success: 4 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/uses_nvim_spec.lua Success || simple nvim test should work Success: 1 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/context_manager_spec.lua Success || context_manager works with objects Success || context_manager works with coroutine Success || context_manager does not work with coroutine with extra yields Success || context_manager reads from files with open Success || context_manager reads from Paths with open Success || context_manager calls exit on error with objects Success || context_manager calls exit on error with coroutines Success || context_manager fails from enter error with objects Success || context_manager fails from enter error with coroutines Success || context_manager fails from exit error with objects Success || context_manager fails from exit error with coroutines Success: 11 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/tbl_spec.lua Success || tbl utilities should be able to freeze a table Success: 1 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/iterators_spec.lua Success || iterators should be able to create iterator from table Success || iterators should be able to create iterator from array Success || iterators should be able to find Success || iterators should be table to chain Success || iterators should make a range Success || iterators should be able to make a stateful Success || iterators should be able to flatten Success || iterators should be able to flatten very nested stuff Success || iterators chaining nil should work Success || iterators generators should be able to split Success: 10 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/popup_spec.lua Success || plenary.popup can create a very simple window Success || plenary.popup can apply a highlight Success || plenary.popup can create a border Success || plenary.popup can apply a border highlight Success || plenary.popup can ignore border highlight with no border Success || plenary.popup can do basic padding Success || plenary.popup can do padding and border Success || plenary.popup borderchars can support multiple border patterns Success || plenary.popup borderchars can support multiple patterns inside the borderchars Success || plenary.popup what can be an existing bufnr Pending || plenary.popup cursor not yet tested Success: 10 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/strings_spec.lua Success || strings strdisplaywidth lua: ambiwidth = single, "abcde" -> 5 Success || strings strdisplaywidth vim: ambiwidth = single, "abcde" -> 5 Success || strings strdisplaywidth lua: ambiwidth = double, "abcde" -> 5 Success || strings strdisplaywidth vim: ambiwidth = double, "abcde" -> 5 Success || strings strdisplaywidth lua: ambiwidth = single, "abc de" -> 10 Success || strings strdisplaywidth vim: ambiwidth = single, "abc de" -> 10 Success || strings strdisplaywidth lua: ambiwidth = double, "abc de" -> 10 Success || strings strdisplaywidth vim: ambiwidth = double, "abc de" -> 10 Success || strings strdisplaywidth lua: ambiwidth = single, "アイウエオ" -> 10 Success || strings strdisplaywidth vim: ambiwidth = single, "アイウエオ" -> 10 Success || strings strdisplaywidth lua: ambiwidth = double, "アイウエオ" -> 10 Success || strings strdisplaywidth vim: ambiwidth = double, "アイウエオ" -> 10 Success || strings strdisplaywidth lua: ambiwidth = single, "├─┤" -> 3 Success || strings strdisplaywidth vim: ambiwidth = single, "├─┤" -> 3 Success || strings strdisplaywidth lua: ambiwidth = double, "├─┤" -> 6 Success || strings strdisplaywidth vim: ambiwidth = double, "├─┤" -> 6 Success || strings strdisplaywidth lua: ambiwidth = single, 123 -> 3 Success || strings strdisplaywidth vim: ambiwidth = single, 123 -> 3 Success || strings strdisplaywidth lua: ambiwidth = double, 123 -> 3 Success || strings strdisplaywidth vim: ambiwidth = double, 123 -> 3 Success || strings strcharpart lua: ("abcde", 2, nil) -> "cde" Success || strings strcharpart vim: ("abcde", 2, nil) -> "cde" Success || strings strcharpart lua: ("abcde", 2, 2) -> "cd" Success || strings strcharpart vim: ("abcde", 2, 2) -> "cd" Success || strings strcharpart lua: ("アイウエオ", 2, 2) -> "ウエ" Success || strings strcharpart vim: ("アイウエオ", 2, 2) -> "ウエ" Success || strings strcharpart lua: ("├───┤", 2, 2) -> "──" Success || strings strcharpart vim: ("├───┤", 2, 2) -> "──" Success || strings truncate ambiwidth = single, direction = right, [abcde, 6] -> abcde Success || strings truncate ambiwidth = double, direction = right, [abcde, 6] -> abcde Success || strings truncate ambiwidth = single, direction = right, [abcde, 5] -> abcde Success || strings truncate ambiwidth = double, direction = right, [abcde, 5] -> abcde Success || strings truncate ambiwidth = single, direction = right, [abcde, 4] -> abc… Success || strings truncate ambiwidth = double, direction = right, [abcde, 4] -> ab… Success || strings truncate ambiwidth = single, direction = right, [アイウエオ, 11] -> アイウエオ Success || strings truncate ambiwidth = double, direction = right, [アイウエオ, 11] -> アイウエオ Success || strings truncate ambiwidth = single, direction = right, [アイウエオ, 10] -> アイウエオ Success || strings truncate ambiwidth = double, direction = right, [アイウエオ, 10] -> アイウエオ Success || strings truncate ambiwidth = single, direction = right, [アイウエオ, 9] -> アイウエ… Success || strings truncate ambiwidth = double, direction = right, [アイウエオ, 9] -> アイウ… Success || strings truncate ambiwidth = single, direction = right, [アイウエオ, 8] -> アイウ… Success || strings truncate ambiwidth = double, direction = right, [アイウエオ, 8] -> アイウ… Success || strings truncate ambiwidth = single, direction = right, [├─┤, 7] -> ├─┤ Success || strings truncate ambiwidth = double, direction = right, [├─┤, 7] -> ├─┤ Success || strings truncate ambiwidth = single, direction = right, [├─┤, 6] -> ├─┤ Success || strings truncate ambiwidth = double, direction = right, [├─┤, 6] -> ├─┤ Success || strings truncate ambiwidth = single, direction = right, [├─┤, 5] -> ├─┤ Success || strings truncate ambiwidth = double, direction = right, [├─┤, 5] -> ├… Success || strings truncate ambiwidth = single, direction = right, [├─┤, 4] -> ├─┤ Success || strings truncate ambiwidth = double, direction = right, [├─┤, 4] -> ├… Success || strings truncate ambiwidth = single, direction = right, [├─┤, 3] -> ├─┤ Success || strings truncate ambiwidth = double, direction = right, [├─┤, 3] -> … Success || strings truncate ambiwidth = single, direction = right, [├─┤, 2] -> ├… Success || strings truncate ambiwidth = double, direction = right, [├─┤, 2] -> … Success || strings truncate ambiwidth = single, direction = left, [abcde, 6] -> abcde Success || strings truncate ambiwidth = double, direction = left, [abcde, 6] -> abcde Success || strings truncate ambiwidth = single, direction = left, [abcde, 5] -> abcde Success || strings truncate ambiwidth = double, direction = left, [abcde, 5] -> abcde Success || strings truncate ambiwidth = single, direction = left, [abcde, 4] -> …cde Success || strings truncate ambiwidth = double, direction = left, [abcde, 4] -> …de Success || strings truncate ambiwidth = single, direction = left, [アイウエオ, 11] -> アイウエオ Success || strings truncate ambiwidth = double, direction = left, [アイウエオ, 11] -> アイウエオ Success || strings truncate ambiwidth = single, direction = left, [アイウエオ, 10] -> アイウエオ Success || strings truncate ambiwidth = double, direction = left, [アイウエオ, 10] -> アイウエオ Success || strings truncate ambiwidth = single, direction = left, [アイウエオ, 9] -> …イウエオ Success || strings truncate ambiwidth = double, direction = left, [アイウエオ, 9] -> …ウエオ Success || strings truncate ambiwidth = single, direction = left, [アイウエオ, 8] -> …ウエオ Success || strings truncate ambiwidth = double, direction = left, [アイウエオ, 8] -> …ウエオ Success || strings truncate ambiwidth = single, direction = left, [├─┤, 7] -> ├─┤ Success || strings truncate ambiwidth = double, direction = left, [├─┤, 7] -> ├─┤ Success || strings truncate ambiwidth = single, direction = left, [├─┤, 6] -> ├─┤ Success || strings truncate ambiwidth = double, direction = left, [├─┤, 6] -> ├─┤ Success || strings truncate ambiwidth = single, direction = left, [├─┤, 5] -> ├─┤ Success || strings truncate ambiwidth = double, direction = left, [├─┤, 5] -> …┤ Success || strings truncate ambiwidth = single, direction = left, [├─┤, 4] -> ├─┤ Success || strings truncate ambiwidth = double, direction = left, [├─┤, 4] -> …┤ Success || strings truncate ambiwidth = single, direction = left, [├─┤, 3] -> ├─┤ Success || strings truncate ambiwidth = double, direction = left, [├─┤, 3] -> … Success || strings truncate ambiwidth = single, direction = left, [├─┤, 2] -> …┤ Success || strings truncate ambiwidth = double, direction = left, [├─┤, 2] -> … Success || strings truncate ambiwidth = single, direction = middle, [abcde, 6] -> abcde Success || strings truncate ambiwidth = double, direction = middle, [abcde, 6] -> abcde Success || strings truncate ambiwidth = single, direction = middle, [abcde, 5] -> abcde Success || strings truncate ambiwidth = double, direction = middle, [abcde, 5] -> abcde Success || strings truncate ambiwidth = single, direction = middle, [abcde, 4] -> a…de Success || strings truncate ambiwidth = double, direction = middle, [abcde, 4] -> a…e Success || strings truncate ambiwidth = single, direction = middle, [アイウエオ, 11] -> アイウエオ Success || strings truncate ambiwidth = double, direction = middle, [アイウエオ, 11] -> アイウエオ Success || strings truncate ambiwidth = single, direction = middle, [アイウエオ, 10] -> アイウエオ Success || strings truncate ambiwidth = double, direction = middle, [アイウエオ, 10] -> アイウエオ Success || strings truncate ambiwidth = single, direction = middle, [アイウエオ, 9] -> アイ…エオ Success || strings truncate ambiwidth = double, direction = middle, [アイウエオ, 9] -> ア…エオ Success || strings truncate ambiwidth = single, direction = middle, [アイウエオ, 8] -> ア…エオ Success || strings truncate ambiwidth = double, direction = middle, [アイウエオ, 8] -> ア…エオ Success || strings truncate ambiwidth = single, direction = middle, [├─┤, 7] -> ├─┤ Success || strings truncate ambiwidth = double, direction = middle, [├─┤, 7] -> ├─┤ Success || strings truncate ambiwidth = single, direction = middle, [├─┤, 6] -> ├─┤ Success || strings truncate ambiwidth = double, direction = middle, [├─┤, 6] -> ├─┤ Success || strings truncate ambiwidth = single, direction = middle, [├─┤, 5] -> ├─┤ Success || strings truncate ambiwidth = double, direction = middle, [├─┤, 5] -> …┤ Success || strings truncate ambiwidth = single, direction = middle, [├─┤, 4] -> ├─┤ Success || strings truncate ambiwidth = double, direction = middle, [├─┤, 4] -> …┤ Success || strings truncate ambiwidth = single, direction = middle, [├─┤, 3] -> ├─┤ Success || strings truncate ambiwidth = double, direction = middle, [├─┤, 3] -> … Success || strings truncate ambiwidth = single, direction = middle, [├─┤, 2] -> …┤ Success || strings truncate ambiwidth = double, direction = middle, [├─┤, 2] -> … Success || strings align_str ambiwidth = single, [abcde, 8, nil] -> "abcde " Success || strings align_str ambiwidth = double, [abcde, 8, nil] -> "abcde " Success || strings align_str ambiwidth = single, [アイウ, 8, nil] -> "アイウ " Success || strings align_str ambiwidth = double, [アイウ, 8, nil] -> "アイウ " Success || strings align_str ambiwidth = single, [├─┤, 8, nil] -> "├─┤ " Success || strings align_str ambiwidth = double, [├─┤, 8, nil] -> "├─┤ " Success || strings align_str ambiwidth = single, [abcde, 8, true] -> " abcde" Success || strings align_str ambiwidth = double, [abcde, 8, true] -> " abcde" Success || strings align_str ambiwidth = single, [アイウ, 8, true] -> " アイウ" Success || strings align_str ambiwidth = double, [アイウ, 8, true] -> " アイウ" Success || strings align_str ambiwidth = single, [├─┤, 8, true] -> " ├─┤" Success || strings align_str ambiwidth = double, [├─┤, 8, true] -> " ├─┤" Success || strings dedent tabstop = 8, empty string Success || strings dedent tabstop = 8, in case tabs are longer than spaces Success || strings dedent tabstop = 2, in case tabs are shorter than spaces Success || strings dedent tabstop = 2, ignores empty lines Success || strings dedent tabstop = 2, no indent Success || strings dedent tabstop = 2, leave_indent = 4 Success || strings dedent tabstop = 4, typical usecase:Using
echo $?
to get the exit code of the last I get exit code 2.Same results with
DEBUG_PLENARY=true
except for the last line:I get (almost) the same result when running the test command specified in the Makefile (
nvim --headless --noplugin -u scripts/minimal.vim -c "PlenaryBustedDirectory tests/plenary/ {minimal_init = 'tests/minimal_init.vim'}"
):Neovim version
``` nvim --version NVIM v0.8.3 Build type: Release LuaJIT 2.1.0-beta3 ```I do not have luarocks installed if that affects the results in any way. Any ideas how to fix this?