aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* | Fix flaky test: tui_spec: increase timeout (#11134)Daniel Hahler2019-10-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Meant to fix: [ ERROR ] test/functional/terminal/tui_spec.lua @ 925: TUI FocusGained/FocusLost in terminal-mode test/functional/ui/screen.lua:587: Row 6 did not match. Expected: |{1:r}eady $ | |[Process exited 0] | | | | | | | |*gained | |{3:-- TERMINAL --} | Actual: |{1:r}eady $ | |[Process exited 0] | | | | | | | |*:terminal | |{3:-- TERMINAL --} | To print the expect() call that would assert the current screen state, use screen:snapshot_util(). In case of non-deterministic failures, use screen:redraw_debug() to show all intermediate screen states. stack traceback: test/functional/ui/screen.lua:587: in function '_wait' test/functional/ui/screen.lua:370: in function 'expect' test/functional/terminal/tui_spec.lua:934: in function <test/functional/terminal/tui_spec.lua:925> I've thought about adding this, but it might not be really relevant, and slows down the tests a bit (and a warning "warning: Screen test succeeded immediately" with another test): ```diff diff --git i/test/functional/terminal/tui_spec.lua w/test/functional/terminal/tui_spec.lua index ada073c4e..4bc2ab4e0 100644 --- i/test/functional/terminal/tui_spec.lua +++ w/test/functional/terminal/tui_spec.lua @@ -818,6 +818,11 @@ describe('TUI FocusGained/FocusLost', function() ..'", "-u", "NONE", "-i", "NONE", "--cmd", "set noswapfile noshowcmd noruler"]') feed_data(":autocmd FocusGained * echo 'gained'\n") feed_data(":autocmd FocusLost * echo 'lost'\n") + -- Wait for autocommand to be registered. + retry(nil, nil, function() + feed_data(":autocmd FocusLost\n") + screen:expect{any=" echo 'lost'"} + end) feed_data("\034\016") -- CTRL-\ CTRL-N end) ```
* | patch_terminfo_bugs: TERM=xterm with non-xterm: ignore smglr (#11132)Daniel Hahler2019-10-02
| | | | | | | | | | | | | | | | | | "smglr" was added for TERM=xterm recently to the terminfo database, which causes display issues with terminals that use `TERM=xterm` by default for themselves, although not supporting it. This patch makes "smglr" to be ignored then. Fixes https://github.com/neovim/neovim/issues/10562
* | Fix redraw regression with w_p_cole in visual modeDaniel Hahler2019-10-02
|/ | | | | Fixes https://github.com/neovim/neovim/issues/11024, regressed in 23c71d51. Closes https://github.com/neovim/neovim/pull/11120.
* Fix/revisit git-describe enhancement (#11124)Daniel Hahler2019-10-02
| | | | | | | | | | | | | | | | | | | | | | * Fix/keep massaging git-describe result Ref: https://github.com/neovim/neovim/pull/11117#issuecomment-536416223 * build: revisit generation of version from Git Fixes "make clean && make", where "auto/versiondef.h" would be missing since b18b84d - because BYPRODUCTS are apparently removed when cleaning. This includes the following improvements/changes: - do not run git-describe during CMake's configure phase just for reporting - do not print with changed Git version (too noisy, simplifies code) * Move to src/nvim (included before config) for easier flow * fallback to describe always, write empty include file * update_version_stamp.lua: use prefix always
* build: get rid of warnings with `cmake --debug-output` (#11131)Daniel Hahler2019-10-02
|
* tui: improve handle_background_color: short-circuit (#11067)Daniel Hahler2019-09-30
| | | | | | | | * handle_background_color: short-circuit if handled already * Unit tests for handle_background_color * set waiting_for_bg_response to false in tui_terminal_after_startup By then it should have been received.
* Merge pull request #11121 from bfredl/invalidcellBjörn Linse2019-09-30
|\ | | | | screen: don't crash on invalid cells being recomposed (tui_raw_line assert)
| * screen: don't crash on invalid grid cells being recomposedBjörn Linse2019-09-30
|/
* third-party: upgrade libluv: 1.30.0-0 => 1.30.1-1 (#11092)Daniel Hahler2019-09-30
| | | Changes: https://github.com/luvit/luv/compare/1.30.0-0...1.30.1-1
* provider#pythonx: resolve/expand exe from host var (#11047)Daniel Hahler2019-09-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts part of ade88fe4c [1]. This is required for `let g:python3_host_prog = 'python'` etc, where it should get picked up from PATH. Without this it would show: ``` - INFO: pyenv: Path: /home/user/.pyenv/libexec/pyenv - INFO: pyenv: Root: /home/user/.pyenv - INFO: Using: g:python3_host_prog = "python" - ERROR: "python" was not found. - INFO: Executable: Not found - ERROR: Detected pip upgrade failure: Python executable can import "pynvim" but not "neovim": python - ADVICE: - Use that Python version to reinstall "pynvim" and optionally "neovim". pip3 uninstall pynvim neovim pip3 install pynvim pip3 install neovim # only if needed by third-party software ``` Note that it additionally causes a weird error ("Detected pip upgrade failure"), due to `s:check_bin` emptying `python_exe` (because the non-absolute file not being readable), and `provider#pythonx#DetectByModule('pynvim', a:version)` from 75593e6fce then just getting the value from the host var again (without actual checks). This is implicitly fixed via this patch now (because it is skipped), but could need some improvement in this regard probably. With this patch it resolves it (for a virtualenv where pynvim is not made available intentionally): ``` - INFO: pyenv: Path: /home/daniel/.pyenv/libexec/pyenv - INFO: pyenv: Root: /home/daniel/.pyenv - INFO: Using: g:python3_host_prog = "python" - WARNING: $VIRTUAL_ENV exists but appears to be inactive. This could lead to unexpected results. - ADVICE: - If you are using Zsh, see: http://vi.stackexchange.com/a/7654 - INFO: Executable: /home/daniel/.pyenv/shims/tmp-system-deoplete.nvim-f205aF/python - ERROR: Command error (job=11, exit code 1): `'/home/daniel/.pyenv/shims/tmp-system-deoplete.nvim-f205aF/python' -c 'import sys; sys.path.remove(""); import neovim; print(neovim.__file__)'` (in '/home/daniel/.dotfiles/vim/plugged/deoplete.nvim') Output: Traceback (most recent call last): File "<string>", line 1, in <module>ModuleNotFoundError: No module named 'neovim' Stderr: Traceback (most recent call last): File "<string>", line 1, in <module>ModuleNotFoundError: No module named 'neovim' - INFO: Python version: 3.7.4 - INFO: pynvim version: unable to load neovim Python module - ERROR: pynvim is not installed. Error: unable to load neovim Python module - ADVICE: - Run in shell: pip3 install pynvim ``` Note: this appears to display the error twice via "Output:" and "Stderr:". 1: https://github.com/neovim/neovim/pull/8784
* bundle: upgrade LuaJIT to latest v2.1 (#10321)Daniel Hahler2019-09-30
|
* build: run git-describe for dev version during build (#11117)Daniel Hahler2019-09-30
| | | | | | | | This avoids invoking CMake after a new commit, which might take 15s on some systems. Skipped on CMake < 3.2.0 (missing BYPRODUCTS support). Co-Authored-By: Justin M. Keyes <justinkz@gmail.com>
* Merge pull request #11115 from bfredl/wildmenumodeBjörn Linse2019-09-29
|\ | | | | cmdline: wildmenumode() should be true with wildoptions+=pum
| * cmdline: wildmenumode() should be true with wildoptions+=pumBjörn Linse2019-09-28
| |
* | cmake: use LibFindMacros for utf8proc (#11114)Daniel Hahler2019-09-29
| | | | | | Also update doc.
* | terminfo_start: keep first flushing of ui buffer (#11118)Daniel Hahler2019-09-29
|/ | | | | | | | Initially done in 3626d2107 (#11074, for #11062), it was reverted then in 445f2f409 (#11083, which added flushing later). But it is still required here to avoid the reporting of the background response with urxvt/kitty (`nvim -u NONE -cq`). Apparently I've tested this not enough with 445f2f409 (probably only within tmux).
* Merge pull request #10124 from bfredl/tree-sitter-apiBjörn Linse2019-09-28
|\ | | | | Tree-sitter step 1: vendor runtime lib + add lua API
| * tree-sitter: improve and cleanup testsBjörn Linse2019-09-28
| |
| * tree-sitter: use "module" pattern in lua sourceBjörn Linse2019-09-28
| |
| * tree-sitter: handle node equalityBjörn Linse2019-09-28
| |
| * tree-sitter: start docsBjörn Linse2019-09-28
| |
| * tree-sitter: use "range" instead of "point_range" consistently in lua APIBjörn Linse2019-09-28
| |
| * tree-sitter: simplify editing using the new old_byte_size parameterBjörn Linse2019-09-28
| |
| * tree-sitter: fix lint, delete "demo" plugin (replaced by functional tests)Björn Linse2019-09-28
| |
| * tree-sitter: improve parser API (shared parser between plugins)Björn Linse2019-09-28
| |
| * tree-sitter: cleanup tree refcountingBjörn Linse2019-09-28
| |
| * tree-sitter: inspect languageBjörn Linse2019-09-28
| |
| * tree-sitter: add some more APIBjörn Linse2019-09-28
| |
| * tree-sitter: styleBjörn Linse2019-09-28
| |
| * tree-sitter: use standard luaL_newmetatable and luaL_checkudata patternBjörn Linse2019-09-28
| |
| * tree-sitter: rename tree_sitter => treesitter for consistencyBjörn Linse2019-09-28
| |
| * tree-sitter: add basic testing on ciBjörn Linse2019-09-28
| | | | | | | | build tree-sitter c parser on ci for testing purposes
| * tree-sitter: support pre-registration of languagesBjörn Linse2019-09-28
| |
| * tree-sitter: objectify APIBjörn Linse2019-09-28
| |
| * tree-sitter: split tree-sitter lua interface from demo codeBjörn Linse2019-09-28
| |
| * tree-sitter: cleanup build codeBjörn Linse2019-09-28
| |
| * Create BuildUtf8proc.cmake and FindUtf8proc.cmakeBjörn Linse2019-09-28
| | | | | | | | Using advanced search and replace technology
| * tree-sitter: load parsers as .so filesBjörn Linse2019-09-28
| |
| * tree-sitter: initial tree-sitter supportBjörn Linse2019-09-28
| |
| * tree-sitter: change vendored tree-sitter to use nvim memory managementBjörn Linse2019-09-28
| |
| * tree-sitter: vendor tree-sitter runtimeBjörn Linse2019-09-28
|/ | | | | | | | | tree-sitter/tree-sitter commit 7685b7861ca475664b6ef57e14d1da9acf741275 Included files are: lib/include/tree-sitter/*.h lib/src/*.[ch] LICENSE
* vim-patch:8.1.2083: multi-byte chars do not work properly with "%.*S" in ↵Daniel Hahler2019-09-28
| | | | | | | printf() (#11106) Problem: Multi-byte chars do not work properly with "%.*S" in printf(). Solution: Use mb_ptr2cells(). Daniel Hahler, closes vim/vim#4989) https://github.com/vim/vim/commit/ce0fac28977af31f1dec411d3535b4de2c3169b3
* doc: contrib/local.mk.example: include ENABLE_LTO (#11097)Daniel Hahler2019-09-26
| | | | | | | Using it takes 30+ additional seconds for me with a ccache-enabled build (43s vs. 12s). While it certainly makes sense to use DEBUG during development, bisecting etc, it should be made clearer what causes this.
* Merge pull request #10907 from jszakmeister/add-freebsd-sourcehut-supportJohn Szakmeister2019-09-26
|\ | | | | build: add support for building for FreeBSD under Sourcehut
| * build: add support for building for FreeBSD under Sourcehut [skip ci]John Szakmeister2019-09-25
| |
* | Fix two more flaky tests (#11095)Daniel Hahler2019-09-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * mode_spec: retry with increasing matchtime `matchtime=2` might still be too low (with luacov on AppVeyor). [ ERROR ] test/functional\ui\mode_spec.lua @ 47: ui mode_change event works in insert mode test\functional\ui\screen.lua:587: mode Expected objects to be the same. Passed in: (string) 'insert' Expected: (string) 'showmatch' Hint: full state of "mode": "insert" Followup to fe60013fb. ref #10941 Initially regressed in 7ed212262242 `` * ui/screen_basic_spec: set timeoutlen=10000 This fixes the test on slow CI. Ref: https://ci.appveyor.com/project/neovim/neovim/builds/27600387/job/t468h2b3w9lwtlm5#L10930
* | vim-patch:8.0.0914: highlight attributes are always combined (#10256)Daniel Hahler2019-09-26
| | | | | | | | | | | | | | | | | | Problem: Highlight attributes are always combined. Solution: Add the 'nocombine' value to replace attributes instead of combining them. (scauligi, closes vim/vim#1963) https://github.com/vim/vim/commit/0cd2a94a4030f6bd12eaec44db92db108e33c913 Closes https://github.com/neovim/neovim/pull/10256.
* | Merge pull request #10978 from blueyed/update-libuvDaniel Hahler2019-09-25
|\ \ | | | | | | third-party: update libuv to v1.32.0
| * | test/functional/preload.lua: _set_fmode for WindowsDaniel Hahler2019-09-25
| | |
| * | Revert "win/os_env_exists(): workaround libuv bug #10734"Daniel Hahler2019-09-25
| | | | | | | | | | | | This reverts commit 278c5d452c2cbc436a9cc317407ae6021a226c3a.