nvim-lua / plenary.nvim

plenary: full; complete; entire; absolute; unqualified. All the lua functions I don't want to write twice.
MIT License
2.82k stars 287 forks source link

Running make returns non-zero code #477

Closed TheNyneR closed 1 year ago

TheNyneR commented 1 year ago

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: to 5 spaces Success: 125 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/path_spec.lua Success || Path should find valid files Success || Path absolute .absolute() Success || Path absolute can determine absolute paths Success || Path absolute can determine non absolute paths Success || Path absolute will normalize the path Success || Path can join paths by constructor or join path Success || Path can join paths with / Success || Path can join paths with paths Success || Path inserts slashes Success || Path .exists() finds files that exist Success || Path .exists() returns false for files that do not exist Success || Path .is_dir() should find directories that exist Success || Path .is_dir() should return false when the directory does not exist Success || Path .is_dir() should not show files as directories Success || Path .is_file() should not allow directories Success || Path .is_file() should return false when the file does not exist Success || Path .is_file() should show files as file Success || Path :new can be called with or without colon Success || Path :make_relative can take absolute paths and make them relative to the cwd Success || Path :make_relative can take absolute paths and make them relative to a given path Success || Path :make_relative can take double separator absolute paths and make them relative to the cwd Success || Path :make_relative can take double separator absolute paths and make them relative to a given path Success || Path :make_relative can take absolute paths and make them relative to a given path with trailing separator Success || Path :make_relative can take absolute paths and make them relative to the root directory Success || Path :make_relative can take absolute paths and make them relative to themselves Success || Path :make_relative should not truncate if path separator is not present after cwd Success || Path :make_relative should not truncate if path separator is not present after cwd and cwd ends in path sep Success || Path :normalize can take path that has one character directories Success || Path :normalize can take paths with double separators change them to single separators Success || Path :normalize can take absolute paths with double sepsand make them relative with single seps Success || Path :normalize can remove the .. in paths Success || Path :normalize can normalize relative paths Success || Path :normalize can normalize relative paths containing .. Success || Path :normalize can normalize relative paths with initial .. Success || Path :normalize can normalize relative paths to absolute when initial .. count matches cwd parts Success || Path :normalize can normalize ~ when file is within home directory (trailing slash) Success || Path :normalize can normalize ~ when file is within home directory (no trailing slash) Success || Path :normalize handles usernames with a dash at the end Success || Path :normalize handles filenames with the same prefix as the home directory Success || Path :shorten can shorten a path Success || Path :shorten can shorten a path's components to a given length Success || Path :shorten can shorten a path's components when excluding parts Success || Path :shorten can shorten a path's components to a given length and exclude positions Success || Path mkdir / rmdir can create and delete directories Success || Path mkdir / rmdir fails when exists_ok is false Success || Path mkdir / rmdir fails when parents is not passed Success || Path mkdir / rmdir can create nested directories Success || Path touch can create and delete new files true true Success || Path touch does not effect already created files but updates last access Success || Path touch does not create dirs if nested in none existing dirs and parents not set Success || Path touch does create dirs if nested in none existing dirs Success || Path rename can rename a file Success || Path rename can handle an invalid filename Success || Path rename can move to parent dir Success || Path rename cannot rename to an existing filename Success || Path copy can copy a file Success || Path copy can copy to parent dir Success || Path copy cannot copy an existing file if override false Success || Path copy fails when copying folders non-recursively Success || Path copy can copy directories recursively Success || Path parents should extract the ancestors of the path Success || Path parents should return itself if it corresponds to path.root Success || Path read parts should read head of file Success || Path read parts should read the first line of file Success || Path read parts head should max read whole file Success || Path read parts should read tail of file Success || Path read parts should read the last line of file Success || Path read parts tail should max read whole file Success || Path readbyterange should read bytes at given offset Success || Path readbyterange supports negative offset Success: 70 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/filetype_spec.lua Success || filetype _get_extension_parts should find stuff with underscores Success || filetype _get_extension_parts should find all possibilities Success || filetype detect_from_extension should work for md Success || filetype detect_from_extension should work for CMakeList.txt Success || filetype detect_from_extension should work with extensions with dot Success || filetype detect_from_extension should work for ext==ft even without a table value Success || filetype detect_from_name should work for common filenames, like makefile Success || filetype detect_from_name should work for CMakeList.txt Success || filetype detect_from_modeline should work for modeline 2 Success || filetype detect_from_modeline should return nothing if ft not found in modeline Success || filetype detect_from_modeline should return nothing for random line Success || filetype detect_from_shebang should work for shell Success || filetype detect_from_shebang should work for bash Success || filetype detect_from_shebang should work for usr/bin/env shell Success || filetype detect_from_shebang should work for env shell Success || filetype detect_from_shebang should work for python Success || filetype detect_from_shebang should work for /usr/bin/python3 Success || filetype detect_from_shebang should work for python3 Success || filetype detect_from_shebang should work for env python Success || filetype detect_from_shebang should not work for random line Success || filetype detect should work for common filetypes, like python Success || filetype detect should work for common filenames, like makefile Success || filetype detect should work for CMakeList.txt Success || filetype detect should work for common files, even with .s, like .bashrc Success || filetype detect should work fo custom filetypes, like fennel Success || filetype detect should work for custom filenames, like Cakefile Success: 26 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/scandir_spec.lua Success || scandir can list all files recursive with cwd Success || scandir can list all files recursive and callback gets called for each entry Success || scandir can list all files recursive with multiple paths Success || scandir can list all files recursive with hidden files Success || scandir can list all files recursive with add directories Success || scandir can list all files recursive with only directories Success || scandir can list all files recursive until depth 1 is reached Success || scandir can list all files recursive until depth 1 is reached and with directories Success || scandir can list all files recursive until depth 2 is reached Success || scandir can list all files recursive with respect_gitignore Success || scandir can list all files recursive with search pattern Success || scandir can list all files recursive with callback search pattern Success || scandir gitignore ignores path when path matches pattern exactly Success || scandir gitignore ignores path when path matches * pattern Success || scandir gitignore ignores path when path matches leading ** pattern Success || scandir gitignore ignores path when path matches trailing ** pattern Success || scandir gitignore ignores path when path matches ? pattern Success || scandir gitignore does not ignore path when path does not match Success || scandir gitignore does not ignore path when path is negated Success || scandir ls works for cwd Success || scandir ls works for another directory Success || scandir ls works with opts.hidden for cwd Success: 22 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/async/test_spec.lua Success || a.before_each should run in async context Success || a.before_each should run for all tests Success || a.after_each should not run before first test Success || a.after_each should run before the second test Success || a.after_each should run before the third test Pending || a.pending This test is disabled Success: 5 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/async/util_spec.lua Success || async await util block_on should block_on Success || async await util block_on should work even when failing Success || async await util protect should be able to protect a non-leaf future Success || async await util protect should be able to protect a non-leaf future that doesnt fail Success: 4 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/async_testing_spec.lua Success || Async test can resume testing with vim.defer_fn Success || Async test can resume testing from job callback Success: 2 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/job_spec.lua Success || Job > cat manually > should split simple stdin Success || Job > cat manually > should allow empty strings Success || Job > cat manually > should split stdin across newlines Pending || Job > cat manually > should split stdin across newlines with no ending newline Success || Job > cat manually > should return last line when there is ending newline Pending || Job > cat manually > should return last line when there is no ending newline Success || Job env should be possible to set one env variable with an array Success || Job env should be possible to set multiple env variables with an array Success || Job env should be possible to set one env variable with a map Success || Job env should be possible to set one env variable with spaces Success || Job env should be possible to set one env variable with spaces and a map Success || Job env should be possible to set multiple env variables with a map Success || Job env should be possible to set multiple env variables with both, array and map Success || Job > simple ls > should match systemlist Success || Job > simple ls > should match larger systemlist Success || Job > simple ls > should not timeout when completing fast jobs Success || Job > simple ls > should return the return code as well Success || Job chain should always run the next job when using and_then Success || Job chain should only run the next job on success when using and_then_on_success Success || Job chain should only run the next job on failure when using and_then_on_failure Success || Job chain should run all normal functions when using after Success || Job chain should run only on success normal functions when using after_success Success || Job chain should run only on failure normal functions when using after_failure Pending || Job .writer should allow using things like fzf Success || Job .writer should work with a table Success || Job .writer should work with a string Success || Job .writer should work with a pipe Success || Job .writer should work with a pipe, but no final newline Success || Job :wait() should respect timeout Success || Job enable_.* should not add things to results when disabled Success || Job enable_.* should not call callbacks when disabled Success || Job enable_.* should not add things to results when disabled Success || Job enable_.* should not call callbacks when disbaled Success || Job validation requires options Success || Job validation requires command Success || Job validation will not spawn jobs with invalid commands Success || Job on_exit should only be called once for wait Success || Job on_exit should only be called once for shutdown Success: 35 Failed : 0 Errors : 0 ======================================== ======================================== Testing: /mnt/GamesHDD/Programming/gentoo/ebuilds/app-nvim/plenary/plenary.nvim/tests/plenary/async/channel_spec.lua Success || channel oneshot should work when rx is used first Success || channel oneshot should work when tx is used first Success || channel oneshot should work with multiple returns Success || channel oneshot should work when sending a falsey value Success || channel oneshot should work when sending a nil value Success || channel oneshot should error when sending mulitple times Success || channel oneshot should block receiving multiple times Success || channel mpsc should wait multiple recv before any send Success || channel mpsc should queues multiple sends before any read Success || channel mpsc should queues multiple sends from multiple producers before any read Success || channel mpsc should read only the last value Success || channel counter should work Success || channel counter should work when getting last Success: 13 Failed : 0 Errors : 0 ======================================== make: *** [Makefile:3: test] Fehler 1 ```

Using echo $? to get the exit code of the last I get exit code 2.

echo $?
2

Same results with DEBUG_PLENARY=true except for the last line:

...
[plenary] [DEBUG 22:06:02] ./lua/plenary/test_harness.lua:159: ... Completed jobsmake: *** [Makefile:3: test] Fehler 1

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'}"):

echo $?
1
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?

TheNyneR commented 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.