update" pull request
https://github.com/neovim/neovim/pulls?q=is%3Apr+author%3Aapp%2Fgithub-actions+version.c+is%3Aopen
and mention the NA patches in a comment (please edit/update one comment,
rather than adding a new comment for each patch).
If there are no open `version.c: update` pull requests, include NA patches in
a commit message in the following format:
>
vim-patch:<version-or-commit>
vim-patch:<version-or-commit>
...
<
where `<version-or-commit>` is a valid Vim version (like `8.0.0123`) or
commit-id (SHA). Each patch is on a separate line.
It is preferred to include NA patches by squashing it in applicable Vim
patches, especially if the Vim patches are related. First line of the commit
message should be from the applicable Vim patch.
>
./scripts/vim-patch -p <na-patch>
./scripts/vim-patch -p <na-patch>
...
./scripts/vim-patch -P <patch>
git rebase -i master
<
Example:
https://github.com/neovim/neovim/commit/00f60c2ce78fc1280e93d5a36bc7b2267d5f4ac6
TYPES OF "NOT APPLICABLE" VIM PATCHES ~
- Vim9script features, and anything related to `:scriptversion`. (Nvim
supports Vimscript version 1 only.) Be aware that patches labelled `Vim9:`
may still contain applicable fixes to other parts of the codebase, so these
patch need to be checked individually.
- Updates to `testdir/Makefile` are usually NA because the Makefile implicitly
finds
https://github.com/neovim/neovim/commit/8a677f8a4bff6005fa39f090c14e970c3dfdbe6e#diff-b3c6ad6680a25a1b42095879e3a87104R52
all `test_*.vim` files.
- Compiler warning fixes: Nvim strives to have no warnings at all, and has a
very different build system from Vim.
- Note: Coverity fixes in Vim are relevant to Nvim.
- `*.proto` changes: Nvim autogenerates function prototypes
- `#ifdef` tweaking: For example, Vim decided to enable `FEAT_VISUAL` for all
platforms - but Nvim already does that. Adding new `FEAT_` guards also isn't
relevant to Nvim.
- Legacy system support: Fixes for legacy systems such as Amiga, OS/2 Xenix,
Mac OS 9, Windows older than XP SP2, are not needed because they are not
supported by Nvim.
- NA files: `src/Make_*`, `src/testdir/Make__*`
- `if_*.c` changes: `if_python.c` et. al. were removed.
- `term.c` changes: the Nvim TUI uses `libtermkey` to read terminal sequences;
Vim's `term.c` was removed.
- `job` patches: incompatible API and implementation
- NA files: `src/channel_*`, `src/job_*`, `src/testdir/test_channel_*`,
`src/testdir/test_job_*`
- `:terminal` patches that modify NA files: incompatible API and
implementation
- NA files: `src/terminal_*`, `src/testdir/test_terminal_*`
- `defaults.vim` patches
- Most GUI-related changes: Nvim GUIs are implemented external to the core C
codebase.
- NA files: `src/gui_*`, `src/gvim_*`, `src/GvimExt/*`, `src/testdir/test_gui*`
- `balloon` changes: Nvim does not support balloon feature
- NA files: `src/beval_*`, `src/testdir/test_balloon_*`
- Screendump tests from `test_popupwin.vim`, `test_popupwin_textprop.vim`:
https://github.com/neovim/neovim/pull/12741#issuecomment-704677141
- json changes: incompatible API https://github.com/neovim/neovim/pull/4131
- NA files: `src/json*`, `src/testdir/test_json.vim`
- `test_restricted.vim` restricted mode is removed in
https://github.com/neovim/neovim/pull/11996
- Many tests in `test_prompt_buffer.vim` require incompatible Vim features
such as `channel`; they should still be included, but skipped
- non-runtime documentation: Moved to https://neovim.io/doc/,
- NA files: `Filelist`, `README`, `INSTALL`,
- Anything else might be relevant; err on the side of caution, and post an
issue if you aren't sure.
==============================================================================
VERSION.C *dev-vimpatch-version.c*
The list of Vim patches in `src/nvim/version.c` is automatically updated
https://github.com/neovim/neovim/pull/7780 based on the presence of