| Commit message (Collapse) | Author | Age |
|
|
|
| |
ref 77594d55f709
|
|
|
|
| |
Closes https://github.com/neovim/neovim/issues/10031
|
|
|
|
|
|
|
|
|
| |
* tests: move os_kill to functional helpers
* tests: fix system_spec when run with clipboard manager
Replaces "xclip" with a dedicated helper program.
Fixes: https://github.com/neovim/neovim/issues/4900#issuecomment-501866842
|
|\ |
|
|/
|
|
|
|
| |
Problem: When starting with multiple tabs file messages is confusing.
Solution: Set 'shortmess' when loading the other tabs. (Christian Brabandt)
https://github.com/vim/vim/commit/c75e81262347e47a69faabd72caf89fec3f06e8f
|
|
|
|
| |
Eliminate `expect_err` in favor of `pcall_err` + `eq` or `matches`.
|
|
|
|
|
| |
- Move os_name() up to "global helpers".
- Rename it to is_os().
- Make it depend on uname() instead of a running Nvim instance.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Update the test to work with changes since it was originally written.
- Keep the test pending() because it still fails:
Expected objects to be the same.
Passed in:
(table: 0x50ce9e38) {
[1] = {
[1] = 'notification'
[2] = 'stderr'
[3] = {
[1] = 0
[2] = {
[1] = '' } } }
*[2] = {
[1] = 'notification'
[2] = 'stdout'
*[3] = {
[1] = 0
*[2] = {
*[1] = '' } } }
[3] = {
[1] = 'notification'
[2] = 'exit'
[3] = {
[1] = 0
[2] = 143 } } }
Expected:
(table: 0x50ce9870) {
[1] = {
[1] = 'notification'
[2] = 'stderr'
[3] = {
[1] = 0
[2] = {
[1] = '' } } }
*[2] = {
[1] = 'notification'
[2] = 'stdout'
*[3] = {
[1] = 0
*[2] = {
*[1] = 'abcdef' } } }
[3] = {
[1] = 'notification'
[2] = 'stdout'
[3] = {
[1] = 0
[2] = {
[1] = '' } } } }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: If a job exits while waiting on another job, the on_exit
handler is queued but f_jobwait() skips it.
Solution: Always do process_wait(), so that handlers are run during
f_jobwait().
fix #8302
Test case:
$ BUSTED_ARGS="--repeat=2000 --no-keep-going" TEST_FILE=test/functional/core/job_spec.lua TEST_FILTER=waiting make functionaltest
Failure example (macOS CI):
FAILED test/functional/core/job_spec.lua: jobs jobwait will run callbacks while waiting
test/functional/core/job_spec.lua:606: Expected objects to be the same.
Passed in:
(table: 0x1be77c80) {
[1] = 'notification'
[2] = 'wait'
*[3] = {
*[1] = 3 } }
Expected:
(table: 0x1be77d10) {
[1] = 'notification'
[2] = 'wait'
*[3] = {
*[1] = 4 } }
stack traceback:
test/functional/core/job_spec.lua:606: in function <test/functional/core/job_spec.lua:583
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Test sometimes fails on macOS CI:
FAILED test/functional/core/job_spec.lua: jobs jobwait will run callbacks while waiting
test/functional/core/job_spec.lua:606: Expected objects to be the same.
Passed in:
(table: 0x1be77c80) {
[1] = 'notification'
[2] = 'wait'
*[3] = {
*[1] = 3 } }
Expected:
(table: 0x1be77d10) {
[1] = 'notification'
[2] = 'wait'
*[3] = {
*[1] = 4 } }
stack traceback:
test/functional/core/job_spec.lua:606: in function <test/functional/core/job_spec.lua:583
Change the test to check if all jobs are starting, not only exiting.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Adapt some tests for OpenBSD:
- scrollback_spec:
- seq(1) is not available on OpenBSD: we'd use jot(1).
- Instead use a (hopefully) portable awk(1) snippet.
- channels_spec
- job_spec
- tui_spec
|
| |
|
|
|
|
|
| |
Depending on the version of Windows, conhost.exe may not be included in
the child process.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There was a longer timeout for Windows already, but unlike stated in
51d42917f it is not a worst-case, but gets waited for always.
The test is only about "-1" on timeout, so reduce it to this.
Fixes:
16:33:19,309 INFO - not ok 627 - jobs jobwait with timeout argument will return -1 if the wait timed out
16:33:19,309 INFO - # test/functional/core/job_spec.lua @ 707
16:33:19,309 INFO - # Failure message: test/functional/core/job_spec.lua:714: Expected objects to be the same.
16:33:19,309 INFO - # Passed in:
16:33:19,309 INFO - # (table: 0x0db1a3f0) {
16:33:19,309 INFO - # [1] = 'notification'
16:33:19,309 INFO - # [2] = 'wait'
16:33:19,309 INFO - # *[3] = {
16:33:19,309 INFO - # *[1] = {
16:33:19,309 INFO - # *[1] = -1
16:33:19,309 INFO - # [2] = -1 } } }
16:33:19,309 INFO - # Expected:
16:33:19,309 INFO - # (table: 0x0db1a480) {
16:33:19,309 INFO - # [1] = 'notification'
16:33:19,309 INFO - # [2] = 'wait'
16:33:19,309 INFO - # *[3] = {
16:33:19,309 INFO - # *[1] = {
16:33:19,309 INFO - # *[1] = 4
16:33:19,309 INFO - # [2] = -1 } } }
16:33:19,309 INFO - # stack traceback:
16:33:19,309 INFO - # test/functional/core/job_spec.lua:714: in function <test/functional/core/job_spec.lua:707>
|
|\ |
|
| | |
|
| |
| |
| |
| |
| | |
Uses `128 + term_signal` in case of exit due to a signal.
Fixes https://github.com/neovim/neovim/issues/10571.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- process_stop: do not close stdin explicitly. The "close stdin" step was from
aa9cb48, before we fixed/reworked the SIGTERM timing logic. So it's probably
outdated / no longer needed.
- win: jobstop: exit_code 15
GetExitCodeProcess appears to return the used signal.
https://docs.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-getexitcodeprocess
ref #10573
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Stopping a job does not work properly on OpenBSD.
Solution: Do not use getpgid() to check the process group of the job
processs ID, always pass the negative process ID to kill().
(George Koehler, closes vim/vim#3656)
https://github.com/vim/vim/commit/76ab4fd61901090e6af3451ca6c5ca0fc370571f
Ref: https://github.com/neovim/neovim/issues/9704
Ref: https://github.com/neovim/neovim/issues/10182#issuecomment-514450069
Closes https://github.com/neovim/neovim/pull/10660
|
| |
| |
| |
| |
| |
| |
| | |
Fixes https://github.com/neovim/neovim/issues/10574.
Keeps 'can be called recursively' pending for now, see
https://github.com/neovim/neovim/pull/10580#issuecomment-515295571.
|
| |
| |
| |
| |
| |
| |
| | |
Windows: Using fopen() directly may need UTF-16 filepath conversion. To
achieve that, os_fopen() goes through os_open().
fix #10586
|
| | |
|
|/
|
|
|
|
| |
Fixes https://github.com/neovim/neovim/issues/10172
* move log_init to event_init
* move init_signs to end of early_init
|
| |
|
|\
| |
| |
| | |
ref #8288
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
The test.functional.helpers and test.unit.helpers modules now include
all of the public functions from test.helpers, so there is no need to
separately require('test.helpers').
|
| |
| |
| |
| |
| | |
- Remove stray print()
- Use uname() instead of system('uname')
|
| |
| |
| |
| |
| | |
Avoid hyper-granularity. Don't need subdirectories for every little
thing.
|
| |
| |
| |
| | |
closes #9964
|
| | |
|
|/
|
|
| |
To use Nvim as a scripting engine the side-effects of swapfiles and user
config should be avoided by default.
|
|
|
|
| |
Closes #8994
|
|
|
|
|
|
|
| |
terminal_get_line_attributes() had this bug for a long time, though it
likely had no effect visible to users.
ref #9028
ref 60f845ca55a1
|
|
|
|
|
|
|
| |
* os/fs.c: add os_isdir_executable()
* eval.c: fix hang on job start caused by non-executable cwd option
* channel.c: assert cwd is an executable directory
* test: jobstart() produces error when using non-executable cwd
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
powershell is slow, and this timeout is "worst case" so it doesn't make
the tests more costly, only avoids a false-positive.
close #8958
|
| |
|
|
|
|
|
|
|
|
|
| |
DWIM: avoid empty buffer 1 when stdin was empty. If other files were
specified at startup, we assume that stdin is only accidentally
not-a-TTY: user did not intend to send text from it.
ref #8560
ref #8561
|
|
|
|
|
|
|
|
|
|
|
|
| |
If stdin is not a TTY we read it into buffer 1, as text. But if the
stdin pipe is empty, Nvim was most likely invoked for some other reason.
DWIM: select buffer 2 (if it exists). Example:
echo file1 | xargs nvim
closes #8560
closes #8561
ref https://github.com/equalsraf/neovim-qt/issues/417
|
|
|
|
|
|
|
|
|
|
| |
Before this change, -E/-Es without `-u NONE` reads stdin as Ex commands.
It should always read stdin as text (into buffer 1), like this:
echo foo | nvim -Es +'%p'
foo
echo foo | nvim -Es -u NORC +'%p'
foo
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This changes Ex mode (Q, -e) to work like Vim's "improved Ex mode"
(gQ, -E). That brings some small behavior differences, but should not
impact most Ex scripts (unless, for example, they depend on mappings
being disabled--but that can be solved for -e by skipping user config).
Before this change:
* the screen test hangs.
After this change:
* Q acts like gQ.
* -e/-es differs from -E/-Es only in its treatment of stdin.
This moves towards potentially removing getexmodeline().
(HINT: That does NOT mean "removing Ex mode", it means removing the
Vi-compatible Ex mode, which differs from Vim's "improved Ex mode" only
in some minor details (e.g. mappings are disabled).)
ref #1089 :-)~
|
|
|
|
|
| |
This behavior was changed (improved) by 5861dc596687 which actually
makes -E more faithful to Vim's behavior.
|
| |
|