aboutsummaryrefslogtreecommitdiff
path: root/CMakeLists.txt
Commit message (Collapse)AuthorAge
* build: fix RelWithDebInfo optimization flags #31802Daiki Noda2025-01-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: RelWithDebInfo generates redundant flags: Compilation: /usr/bin/cc -O2 -g -Og -g The `CMAKE_C_FLAGS_RELWITHDEBINFO` variable is being modified in a way that caused duplicate `-Og` and `-g` flags to be added. The resulting flags were `-O2 -g -Og -g`. - `-Og` (Optimize for debugging) and `-O2` (Optimize for performance) are different optimization levels. We can't use both at once. - The duplicate `-g` flag is redundant and no effect. multiple -O flags has no effect for code, just redundant. > If you use multiple -O options, with or without level numbers, the last such option is the one that is effective. https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html Solution: Adjust the flags to use the more appropriate `-O2 -g`. Compilation: /usr/bin/cc -O2 -g BEFORE: ``` :verbose version NVIM v0.11.0-dev-1443+ge00cd1ab40 Build type: RelWithDebInfo LuaJIT 2.1.1734355927 Compilation: /usr/bin/cc -O2 -g -Og -g -flto -fno-fat-lto-ob jects -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict ... ``` AFTER: ``` :verbose version NVIM v0.11.0-dev-e00cd1ab4-dirty Build type: RelWithDebInfo LuaJIT 2.1.1734355927 Compilation: /usr/bin/cc -O2 -g -flto -fno-fat-lto-objects - Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-protot ... ```
* build: remove `lintcommit` from `lint` targetdundargoc2024-12-23
| | | | | | | Previously, `make lint` would invoke `lintcommit` which would fail if there were fixup or other disallowed commits. This would disrupt local development as developers would often want non-commit linting to work early on without needing to adhere to the strict commit rules.
* build: mark CMake variables advanced #31412Eisuke Kawashima2024-12-09
| | | The variables are not marked as advanced, thus they appear in e.g. `ccmake`.
* docs: miscdundargoc2024-10-23
| | | | | | | Co-authored-by: David Pedersen <limero@me.com> Co-authored-by: Gregory Anders <greg@gpanders.com> Co-authored-by: Leo Schlosser <Leo.Schlosser@Student.HTW-Berlin.de> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* test: port libvterm unit test to neovim test suitedundargoc2024-10-22
| | | | | | | These were imported from the v0.3.3 git tag https://github.com/neovim/libvterm/tree/v0.3.3 and not the latest commit. This is for compatibility reasons as the libvterm code was imported from v0.3.3.
* fix(build): remove USE_FNAME_CASE, redundant with CASE_INSENSITIVE_FILENAMEbfredl2024-10-11
| | | | | It stands to reason, you need to "fix" case-insensitive filenames if-and-only-if you have case-insensitive filenames.
* docs: more `@since` annotations #30660Justin M. Keyes2024-10-04
|
* docs: lua error patterns #30240Justin M. Keyes2024-09-24
| | | | Co-authored-by: Mathias Fussenegger <f.mathias@zignar.net> Co-authored-by: Ananth Bhaskararaman <antsub@gmail.com>
* build: bump minimum cmake version to 3.16dundargoc2024-09-21
|
* feat(treesitter): add support for wasm parsersLewis Russell2024-08-26
| | | | | | | | | | | | | | | | | | | | Problem: Installing treesitter parser is hard (harder than climbing to heaven). Solution: Add optional support for wasm parsers with `wasmtime`. Notes: * Needs to be enabled by setting `ENABLE_WASMTIME` for tree-sitter and Neovim. Build with `make CMAKE_EXTRA_FLAGS=-DENABLE_WASMTIME=ON DEPS_CMAKE_FLAGS=-DENABLE_WASMTIME=ON` * Adds optional Rust (obviously) and C11 dependencies. * Wasmtime comes with a lot of features that can negatively affect Neovim performance due to library and symbol table size. Make sure to build with minimal features and full LTO. * To reduce re-compilation times, install `sccache` and build with `RUSTC_WRAPPER=<path/to/sccache> make ...`
* build(deps): fix formatc target on MSVCdundargoc2024-07-02
| | | | | | | | Set CMAKE_RUNTIME_OUTPUT_DIRECTORY for CMAKE_ARGS for the uncrustify ExternalProject to point to DEPS_BIN_DIR because the uncrustify cmake sources do not install to DESTDIR/bin under MSVC but to DESTDIR. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
* build: reuse code for deps.txt for both deps and main builddundargoc2024-05-28
|
* version bumpJustin M. Keyes2024-05-16
|
* NVIM v0.10.0Justin M. Keyes2024-05-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For notable changes, see runtime/doc/news.txt (or `:help news` in Nvim). Following is a list of fixes/features commits. BREAKING -------------------------------------------------------------------------------- - 649dd00fe2e5 remove deprecated functions - 0370e4def0c0 remove neovim qt - 880f7d12fea3 remove vimballs (#22402) - c48b1421af28 rename "playground" => "dev" #23919 - 2f85bbe61513 rewrite TOhtml in lua - abe39f2b243d api: change return type of nvim_win_text_height to Dict (#24365) - 7180ef690180 api: nvim_open_win: noautocmd blocks all autocmds #28192 - 700cab00680f events: trigger CursorMoved later on switching window (#23711) - e4a136f71375 ex_cmds: remove :behave - e5e0bda41b64 lsp: add vim.lsp.status, client.progress and promote LspProgressUpdate (#23958) - 5a363ccac8ff lsp: deprecate trim_empty_lines - 5a2536de0c4b lsp: move changetracking to separate file (#26577) - 58618d208acd lsp: promote LspRequest to a full autocmd and enrich with additional data (#23694) - 1b9ccd38a12f lsp: rename vim.lsp.get_active_clients to get_clients (#24113) - eb1f0e8fcca7 lsp: replace snippet parser by lpeg grammar - 448907f65d67 lsp: vim.lsp.inlay_hint.get(), enable(), is_enabled() #25512 - 7caf0eafd83b lua: add stricter vim.tbl_islist() and rename old one to vim.tbl_isarray() (#16440) - 747264320c6d mappings: remove #n as a notation for a function key (#17318) - f7da47225706 options: graduate shortmess+=f flag - c3d1d9445c70 options: graduate some more shortmess flags - 5df4fdf253f9 options: make OptionSet `v:` values use typval - 881d17a11393 options: remove compatible behaviours for vim 5.0 and earlier - e19cc9c9b715 options: unify `set_option` and `set_string_option` - db590e96d593 startup: "nvim -l" message does not end with newline #24215 - 2ca076e45fb3 treesitter: incremental injection parsing - f5dc45310941 treesitter: new standard capture names - fc0ee871de2f treesitter: remove deprecated legacy injection format - 6debb1852355 treesitter: remove duplicated diagnostic code (#24976) - 18da6964cc61 vim.iter: remove vim.iter.map/filter/totable #26138 - 9b028bd64f42 vim.iter: rename xxback() => rxx() #28503 - 8d4a53fe6e20 vim.json: remove global options, "null", "array_mt" #24070 - 40ce8577977f vim.ui: change open() to return `result|nil, errmsg|nil` #28612 - e0d92b9cc20b vim.ui: change open() to return pcall-like values #28502 FEATURES -------------------------------------------------------------------------------- - a66b0fdfaa35 NVIM_APPNAME supports relative paths #25233 - c0beb8173fe2 add .luarc.json (#24592) - 14b7ffcf89bc add __call typing for vim.inspect() - ca7e488cfeb1 add link in issue template to minimal config template - 4bf47222c973 add vim.text module (#26069) - 0ebc4de0ff93 allow opting in to builtin clipboard providers (#28083) - e8d3c4cccb9d generate types and docs for v variables - 29fe883aa916 ignore swapfile for running Nvim processes #25336 - 28d1640dd604 improve return type annotations for vim.api.* - 199a990c9e4e report "build" in vim.version() #23925 - e68879325393 tostring(vim.version()) - c559ab0ae6be update unicode tables (#27317) - ecdb6465e272 vim.version() returns a Version object - 4b60267f82ef :source: source current ft=lua buffer as Lua code (#23802) - 428edcde7068 api: add forward and back mouse buttons - 037ea6e786b5 api: add nvim__redraw for more granular redrawing - ca9f6f56949d api: add nvim_tabpage_set_win (#27222) - db8fe63a9398 api: add nvim_win_text_height (#24236) - 16513b303375 api: allow floats to be opened in non-current tabpage (#28480) - 6b4970f6e0ac api: allow open_win/win_set_buf in the cmdwin in some cases - 5d921e28c1cc api: allow win_close in cmdwin to close wins except previous - 472271199e48 api: allow win_hide to close cmdwin or non-previous windows - 6bba4becedae api: make nvim_open_win support non-floating windows (#25550) - b162adbb7ca4 api: pass 0 to nvim_get_chan_info for current channel (#27321) - 42bbc4fabcf9 api: support abbreviations in nvim_set_keymap - 98a4ed0a1106 api: support getting abbreviations (#26868) - d3d7d763f3e1 builtin: improve types - 748bc4d22d35 clipboard: add OSC 52 clipboard support - db57df04b6af clipboard: enable OSC 52 clipboard provider by default (#26064) - 734848dc1a9e colorscheme: add semantic tokens modifiers to builtin color scheme - 1e0996b57230 colorscheme: update treesitter groups - 73de98256cf3 comment: add built-in commenting - ae4ca4edf89e complete: support f flag for complete buffer part - 01c51a491330 completion: support completing more string options - ae3685798dea decoration: allow conceal_char to be a composing char - 30a5c28c8740 decoration_provider: log errors as error messages - 9711370c2645 defaults: add :Inspect to right-click menu (#28181) - 2613ba5000d4 defaults: enable 'termguicolors' by default when supported by terminal - 513fc461957f defaults: improve :grep defaults #28545 - c26dc1f77c79 defaults: map Q and @x to repeat in Visual mode (#26495) - 8758c6fb875f defaults: set g:netrw_use_errorwindow = 0 #24179 - 1d81d7a268f5 defaults: treat "•" as a list item prefix #24623 - 20b38677c22b defaults: use ripgrep (rg) for 'grepprg' if available - 61063653b06b defaults: visual CTRL-R for LSP mappings #28537 - 4ee656e4f357 diagnostic: add `vim.diagnostic.count()` (#26807) - 73034611c25d diagnostic: add default mappings for diagnostics (#16230) - fc6d713dd806 diagnostic: add support for many namespaces filtering in