From 44b18d32b4a8693173b2a2b4a3726af477117572 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Thu, 23 Feb 2023 15:47:24 +0100 Subject: [PATCH 01/60] Update License to SPDX expressions https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_1 --- neovim.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/neovim.spec b/neovim.spec index b33d395..d4e2b5d 100644 --- a/neovim.spec +++ b/neovim.spec @@ -42,7 +42,7 @@ Name: neovim Version: 0.8.3 Release: 1%{?dist} -License: ASL 2.0 +License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility Url: https://neovim.io From 26a755011dc31f626f8153ff6e47cba27b7dd765 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Thu, 2 Mar 2023 20:46:58 +0100 Subject: [PATCH 02/60] Update spec-template https://fedoraproject.org/wiki/Changes/Rpmautospec_by_Default --- spec-template | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/spec-template b/spec-template index 56340d4..30e6437 100644 --- a/spec-template +++ b/spec-template @@ -1,6 +1,6 @@ Name: Version: -Release: 1%{?dist} +Release: %{autorelease} Summary: License: @@ -35,3 +35,4 @@ Requires: %changelog +%{autochangelog} From a6ad9cc0a6677ef91b07f0bf93b8e62641ab9efe Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Sun, 5 Mar 2023 21:55:19 +0100 Subject: [PATCH 03/60] New build for SPDX expression --- neovim.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/neovim.spec b/neovim.spec index d4e2b5d..43a617b 100644 --- a/neovim.spec +++ b/neovim.spec @@ -40,7 +40,7 @@ Name: neovim Version: 0.8.3 -Release: 1%{?dist} +Release: 2%{?dist} License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility @@ -1892,6 +1892,10 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Sun Mar 05 2023 Andreas Schneider - 0.8.3-2 +- Update License to SPDX expression +- Update spec template for auto(release|changelog) + * Thu Feb 02 2023 Andreas Schneider - 0.8.3-1 - Update to version 0.8.3 * https://github.com/neovim/neovim/releases/tag/v0.8.3 From 7e8ce53864377f0fc8214289a389dde2f4f9e2b3 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Sat, 25 Mar 2023 20:49:40 +0100 Subject: [PATCH 04/60] Fix snprintf buffer overflow resolves: rhbz#2165805 --- 22780.patch | 158 ++++++++++++++++++++++++++++++++++++++++++++++++++++ neovim.spec | 7 ++- 2 files changed, 164 insertions(+), 1 deletion(-) create mode 100644 22780.patch diff --git a/22780.patch b/22780.patch new file mode 100644 index 0000000..d90b9ae --- /dev/null +++ b/22780.patch @@ -0,0 +1,158 @@ +From a4640cc51fda6b5688c9b79c2d4d7d19e6d758a3 Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Sat, 25 Mar 2023 11:26:36 +0100 +Subject: [PATCH] fix: snprintf buffer overflow detected by -D_FORTIFY_SOURCE=3 + +Thread no. 1 (24 frames) + #8 snprintf at /usr/include/bits/stdio2.h:54 + #9 set_cmdarg at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/eval.c:7044 + #10 apply_autocmds_group at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/autocmd.c:1843 + #11 apply_autocmds_exarg at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/autocmd.c:1549 + #12 readfile at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:617 + #13 buf_reload at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:5038 + #14 buf_check_timestamp at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:4952 + #15 check_timestamps at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:4678 + #16 ex_checktime at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_cmds2.c:765 + #17 execute_cmd0 at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:1620 + #18 do_one_cmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:2275 + #19 do_cmdline at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:584 + #20 ex_execute at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/eval.c:7727 + #21 execute_cmd0 at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:1620 + #22 do_one_cmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:2275 + #23 do_cmdline at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:584 + #24 do_ucmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/usercmd.c:1661 + #25 execute_cmd0 at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:1612 + #26 do_one_cmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:2275 + #27 do_cmdline at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:584 + #28 nv_colon at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/normal.c:4058 + #29 normal_execute at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/normal.c:1172 + #30 state_enter at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/state.c:88 + #31 normal_enter at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/normal.c:471 + +Signed-off-by: Andreas Schneider +--- + src/nvim/eval.c | 73 +++++++++++++++++++++++++++++++++++++------------ + 1 file changed, 55 insertions(+), 18 deletions(-) + +diff --git a/src/nvim/eval.c b/src/nvim/eval.c +index cd76d1108..c652d9507 100644 +--- a/src/nvim/eval.c ++++ b/src/nvim/eval.c +@@ -6999,20 +6999,18 @@ char *set_cmdarg(exarg_T *eap, char *oldarg) + { + char *oldval = vimvars[VV_CMDARG].vv_str; + if (eap == NULL) { +- xfree(oldval); +- vimvars[VV_CMDARG].vv_str = oldarg; +- return NULL; ++ goto error; + } + + size_t len = 0; + if (eap->force_bin == FORCE_BIN) { +- len = 6; ++ len += 6; // " ++bin" + } else if (eap->force_bin == FORCE_NOBIN) { +- len = 8; ++ len += 8; // " ++nobin" + } + + if (eap->read_edit) { +- len += 7; ++ len += 7; // " ++edit" + } + + if (eap->force_ff != 0) { +@@ -7027,38 +7025,77 @@ char *set_cmdarg(exarg_T *eap, char *oldarg) + + const size_t newval_len = len + 1; + char *newval = xmalloc(newval_len); ++ size_t xlen = 0; ++ int rc = 0; + + if (eap->force_bin == FORCE_BIN) { +- snprintf(newval, newval_len, " ++bin"); ++ rc = snprintf(newval, newval_len, " ++bin"); + } else if (eap->force_bin == FORCE_NOBIN) { +- snprintf(newval, newval_len, " ++nobin"); ++ rc = snprintf(newval, newval_len, " ++nobin"); + } else { + *newval = NUL; + } ++ if (rc < 0) { ++ goto error; ++ } ++ xlen += (size_t)rc; + + if (eap->read_edit) { +- STRCAT(newval, " ++edit"); ++ rc = snprintf(newval + xlen, newval_len - xlen, " ++edit"); ++ if (rc < 0) { ++ goto error; ++ } ++ xlen += (size_t)rc; + } + + if (eap->force_ff != 0) { +- snprintf(newval + strlen(newval), newval_len, " ++ff=%s", +- eap->force_ff == 'u' ? "unix" : +- eap->force_ff == 'd' ? "dos" : "mac"); ++ rc = snprintf(newval + xlen, ++ newval_len - xlen, ++ " ++ff=%s", ++ eap->force_ff == 'u' ? "unix" ++ : eap->force_ff == 'd' ? "dos" : "mac"); ++ if (rc < 0) { ++ goto error; ++ } ++ xlen += (size_t)rc; + } + if (eap->force_enc != 0) { +- snprintf(newval + strlen(newval), newval_len, " ++enc=%s", +- eap->cmd + eap->force_enc); ++ rc = snprintf(newval + (xlen), newval_len - xlen, " ++enc=%s", eap->cmd + eap->force_enc); ++ if (rc < 0) { ++ goto error; ++ } ++ xlen += (size_t)rc; + } ++ + if (eap->bad_char == BAD_KEEP) { +- STRCPY(newval + strlen(newval), " ++bad=keep"); ++ rc = snprintf(newval + xlen, newval_len - xlen, " ++bad=keep"); ++ if (rc < 0) { ++ goto error; ++ } ++ xlen += (size_t)rc; + } else if (eap->bad_char == BAD_DROP) { +- STRCPY(newval + strlen(newval), " ++bad=drop"); ++ rc = snprintf(newval + xlen, newval_len - xlen, " ++bad=drop"); ++ if (rc < 0) { ++ goto error; ++ } ++ xlen += (size_t)rc; + } else if (eap->bad_char != 0) { +- snprintf(newval + strlen(newval), newval_len, " ++bad=%c", +- eap->bad_char); ++ rc = snprintf(newval + xlen, newval_len - xlen, " ++bad=%c", eap->bad_char); ++ if (rc < 0) { ++ goto error; ++ } ++ xlen += (size_t)rc; + } ++ ++ assert(xlen <= newval_len); ++ + vimvars[VV_CMDARG].vv_str = newval; + return oldval; ++ ++error: ++ xfree(oldval); ++ vimvars[VV_CMDARG].vv_str = oldarg; ++ return NULL; + } + + /// Check if variable "name[len]" is a local variable or an argument. +-- +2.39.2 + diff --git a/neovim.spec b/neovim.spec index 43a617b..61bd937 100644 --- a/neovim.spec +++ b/neovim.spec @@ -40,7 +40,7 @@ Name: neovim Version: 0.8.3 -Release: 2%{?dist} +Release: 3%{?dist} License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility @@ -51,6 +51,7 @@ Source1: sysinit.vim Source2: spec-template Patch0: neovim-fix-fortify-source.patch +Patch1: https://github.com/neovim/neovim/pull/22780.patch Patch1000: neovim-lua-bit32.patch @@ -112,6 +113,7 @@ parts of Vim, without compromise, and more. %prep %setup -q %patch0 -p1 +%patch1 -p1 %if %{without luajit} %patch1000 -p1 @@ -1892,6 +1894,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Sat Mar 25 2023 Andreas Schneider - 0.8.3-3 +- resolves: rhbz#2165805 - Fix snprintf buffer overflow + * Sun Mar 05 2023 Andreas Schneider - 0.8.3-2 - Update License to SPDX expression - Update spec template for auto(release|changelog) From d2f512bdb8f8e03a58a8c7bb47c029b075cccf88 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Mon, 27 Mar 2023 09:02:16 +0200 Subject: [PATCH 05/60] Fix snprintf buffer overflow with tags resolves: rhbz#2181836 --- 22729.patch | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ neovim.spec | 7 ++++++- 2 files changed, 58 insertions(+), 1 deletion(-) create mode 100644 22729.patch diff --git a/22729.patch b/22729.patch new file mode 100644 index 0000000..089ce08 --- /dev/null +++ b/22729.patch @@ -0,0 +1,52 @@ +From a917104263ac6dda15a9c9b7ab61e3378aec58a9 Mon Sep 17 00:00:00 2001 +From: koeleck <779769+koeleck@users.noreply.github.com> +Date: Sun, 19 Mar 2023 22:32:37 +0100 +Subject: [PATCH] fix: invalid buffer size argument to snprintf #22729 + +Problem: +Crash in findtags_add_match with FORTIFY_SOURCE=3. +Note: Fedora 38 packages are now built with -D_FORTIFY_SOURCE=3 by default. +1. Compile with overflow protection. +2. nvim --clean +3. :h +4. `*** overflow detected ***: terminated` + +The additional checks for the stated buffer size and the actual bounds +of the buffer do not match. See `___snprintf_chk` in the glibc sources: +https://sourceware.org/git/?p=glibc.git;a=blob;f=debug/snprintf_chk.c;h=59577de076c570b81307dd31c8c73e265808cf4c;hb=HEAD#l28 + +Solution: +Fix arithmetic error: The length of the previously written data is now +subtracted from the total size of the buffer, instead of added on top. + +close #22718 + +Backported by: Andreas Schneider +--- + src/nvim/tag.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/src/nvim/tag.c b/src/nvim/tag.c +index a8d8eebb0..501f31196 100644 +--- a/src/nvim/tag.c ++++ b/src/nvim/tag.c +@@ -2029,13 +2029,14 @@ parse_line: + // The format is {tagname}@{lang}NUL{heuristic}NUL + *tagp.tagname_end = NUL; + len = (size_t)(tagp.tagname_end - (char_u *)tagp.tagname); +- mfp = xmalloc(sizeof(char) + len + 10 + ML_EXTRA + 1); ++ size_t mfp_size = sizeof(char) + len + 10 + ML_EXTRA + 1; ++ mfp = xmalloc(mfp_size); + + p = (char_u *)mfp; + STRCPY(p, tagp.tagname); + p[len] = '@'; + STRCPY(p + len + 1, help_lang); +- snprintf((char *)p + len + 1 + ML_EXTRA, STRLEN(p) + len + 1 + ML_EXTRA, "%06d", ++ snprintf(p + len + 1 + ML_EXTRA, mfp_size - (len + 1 + ML_EXTRA), "%06d", + help_heuristic(tagp.tagname, + match_re ? matchoff : 0, !match_no_ic) + + help_pri); +-- +2.39.2 + diff --git a/neovim.spec b/neovim.spec index 61bd937..f858ec4 100644 --- a/neovim.spec +++ b/neovim.spec @@ -40,7 +40,7 @@ Name: neovim Version: 0.8.3 -Release: 3%{?dist} +Release: 4%{?dist} License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility @@ -52,6 +52,7 @@ Source2: spec-template Patch0: neovim-fix-fortify-source.patch Patch1: https://github.com/neovim/neovim/pull/22780.patch +Patch2: https://github.com/neovim/neovim/pull/22729.patch Patch1000: neovim-lua-bit32.patch @@ -114,6 +115,7 @@ parts of Vim, without compromise, and more. %setup -q %patch0 -p1 %patch1 -p1 +%patch2 -p1 %if %{without luajit} %patch1000 -p1 @@ -1894,6 +1896,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Mon Mar 27 2023 Andreas Schneider - 0.8.3-4 +- resolves: rhbz#2181836 - Fix snprintf buffer overflow with tags + * Sat Mar 25 2023 Andreas Schneider - 0.8.3-3 - resolves: rhbz#2165805 - Fix snprintf buffer overflow From be3c3bd079bcfe1f38964a70bc75df84a27818f2 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Fri, 7 Apr 2023 18:11:47 +0200 Subject: [PATCH 06/60] Update to version 0.9.0 --- .gitignore | 1 + 22729.patch | 52 -------- 22780.patch | 158 ------------------------ neovim-fix-fortify-source.patch | 39 ------ neovim.spec | 208 ++++++++++++++++++++------------ sources | 2 +- 6 files changed, 136 insertions(+), 324 deletions(-) delete mode 100644 22729.patch delete mode 100644 22780.patch delete mode 100644 neovim-fix-fortify-source.patch diff --git a/.gitignore b/.gitignore index abbfa49..c273174 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,4 @@ /neovim-0.8.1.tar.gz /neovim-0.8.2.tar.gz /neovim-0.8.3.tar.gz +/neovim-0.9.0.tar.gz diff --git a/22729.patch b/22729.patch deleted file mode 100644 index 089ce08..0000000 --- a/22729.patch +++ /dev/null @@ -1,52 +0,0 @@ -From a917104263ac6dda15a9c9b7ab61e3378aec58a9 Mon Sep 17 00:00:00 2001 -From: koeleck <779769+koeleck@users.noreply.github.com> -Date: Sun, 19 Mar 2023 22:32:37 +0100 -Subject: [PATCH] fix: invalid buffer size argument to snprintf #22729 - -Problem: -Crash in findtags_add_match with FORTIFY_SOURCE=3. -Note: Fedora 38 packages are now built with -D_FORTIFY_SOURCE=3 by default. -1. Compile with overflow protection. -2. nvim --clean -3. :h -4. `*** overflow detected ***: terminated` - -The additional checks for the stated buffer size and the actual bounds -of the buffer do not match. See `___snprintf_chk` in the glibc sources: -https://sourceware.org/git/?p=glibc.git;a=blob;f=debug/snprintf_chk.c;h=59577de076c570b81307dd31c8c73e265808cf4c;hb=HEAD#l28 - -Solution: -Fix arithmetic error: The length of the previously written data is now -subtracted from the total size of the buffer, instead of added on top. - -close #22718 - -Backported by: Andreas Schneider ---- - src/nvim/tag.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/src/nvim/tag.c b/src/nvim/tag.c -index a8d8eebb0..501f31196 100644 ---- a/src/nvim/tag.c -+++ b/src/nvim/tag.c -@@ -2029,13 +2029,14 @@ parse_line: - // The format is {tagname}@{lang}NUL{heuristic}NUL - *tagp.tagname_end = NUL; - len = (size_t)(tagp.tagname_end - (char_u *)tagp.tagname); -- mfp = xmalloc(sizeof(char) + len + 10 + ML_EXTRA + 1); -+ size_t mfp_size = sizeof(char) + len + 10 + ML_EXTRA + 1; -+ mfp = xmalloc(mfp_size); - - p = (char_u *)mfp; - STRCPY(p, tagp.tagname); - p[len] = '@'; - STRCPY(p + len + 1, help_lang); -- snprintf((char *)p + len + 1 + ML_EXTRA, STRLEN(p) + len + 1 + ML_EXTRA, "%06d", -+ snprintf(p + len + 1 + ML_EXTRA, mfp_size - (len + 1 + ML_EXTRA), "%06d", - help_heuristic(tagp.tagname, - match_re ? matchoff : 0, !match_no_ic) - + help_pri); --- -2.39.2 - diff --git a/22780.patch b/22780.patch deleted file mode 100644 index d90b9ae..0000000 --- a/22780.patch +++ /dev/null @@ -1,158 +0,0 @@ -From a4640cc51fda6b5688c9b79c2d4d7d19e6d758a3 Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Sat, 25 Mar 2023 11:26:36 +0100 -Subject: [PATCH] fix: snprintf buffer overflow detected by -D_FORTIFY_SOURCE=3 - -Thread no. 1 (24 frames) - #8 snprintf at /usr/include/bits/stdio2.h:54 - #9 set_cmdarg at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/eval.c:7044 - #10 apply_autocmds_group at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/autocmd.c:1843 - #11 apply_autocmds_exarg at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/autocmd.c:1549 - #12 readfile at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:617 - #13 buf_reload at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:5038 - #14 buf_check_timestamp at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:4952 - #15 check_timestamps at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:4678 - #16 ex_checktime at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_cmds2.c:765 - #17 execute_cmd0 at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:1620 - #18 do_one_cmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:2275 - #19 do_cmdline at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:584 - #20 ex_execute at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/eval.c:7727 - #21 execute_cmd0 at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:1620 - #22 do_one_cmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:2275 - #23 do_cmdline at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:584 - #24 do_ucmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/usercmd.c:1661 - #25 execute_cmd0 at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:1612 - #26 do_one_cmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:2275 - #27 do_cmdline at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:584 - #28 nv_colon at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/normal.c:4058 - #29 normal_execute at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/normal.c:1172 - #30 state_enter at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/state.c:88 - #31 normal_enter at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/normal.c:471 - -Signed-off-by: Andreas Schneider ---- - src/nvim/eval.c | 73 +++++++++++++++++++++++++++++++++++++------------ - 1 file changed, 55 insertions(+), 18 deletions(-) - -diff --git a/src/nvim/eval.c b/src/nvim/eval.c -index cd76d1108..c652d9507 100644 ---- a/src/nvim/eval.c -+++ b/src/nvim/eval.c -@@ -6999,20 +6999,18 @@ char *set_cmdarg(exarg_T *eap, char *oldarg) - { - char *oldval = vimvars[VV_CMDARG].vv_str; - if (eap == NULL) { -- xfree(oldval); -- vimvars[VV_CMDARG].vv_str = oldarg; -- return NULL; -+ goto error; - } - - size_t len = 0; - if (eap->force_bin == FORCE_BIN) { -- len = 6; -+ len += 6; // " ++bin" - } else if (eap->force_bin == FORCE_NOBIN) { -- len = 8; -+ len += 8; // " ++nobin" - } - - if (eap->read_edit) { -- len += 7; -+ len += 7; // " ++edit" - } - - if (eap->force_ff != 0) { -@@ -7027,38 +7025,77 @@ char *set_cmdarg(exarg_T *eap, char *oldarg) - - const size_t newval_len = len + 1; - char *newval = xmalloc(newval_len); -+ size_t xlen = 0; -+ int rc = 0; - - if (eap->force_bin == FORCE_BIN) { -- snprintf(newval, newval_len, " ++bin"); -+ rc = snprintf(newval, newval_len, " ++bin"); - } else if (eap->force_bin == FORCE_NOBIN) { -- snprintf(newval, newval_len, " ++nobin"); -+ rc = snprintf(newval, newval_len, " ++nobin"); - } else { - *newval = NUL; - } -+ if (rc < 0) { -+ goto error; -+ } -+ xlen += (size_t)rc; - - if (eap->read_edit) { -- STRCAT(newval, " ++edit"); -+ rc = snprintf(newval + xlen, newval_len - xlen, " ++edit"); -+ if (rc < 0) { -+ goto error; -+ } -+ xlen += (size_t)rc; - } - - if (eap->force_ff != 0) { -- snprintf(newval + strlen(newval), newval_len, " ++ff=%s", -- eap->force_ff == 'u' ? "unix" : -- eap->force_ff == 'd' ? "dos" : "mac"); -+ rc = snprintf(newval + xlen, -+ newval_len - xlen, -+ " ++ff=%s", -+ eap->force_ff == 'u' ? "unix" -+ : eap->force_ff == 'd' ? "dos" : "mac"); -+ if (rc < 0) { -+ goto error; -+ } -+ xlen += (size_t)rc; - } - if (eap->force_enc != 0) { -- snprintf(newval + strlen(newval), newval_len, " ++enc=%s", -- eap->cmd + eap->force_enc); -+ rc = snprintf(newval + (xlen), newval_len - xlen, " ++enc=%s", eap->cmd + eap->force_enc); -+ if (rc < 0) { -+ goto error; -+ } -+ xlen += (size_t)rc; - } -+ - if (eap->bad_char == BAD_KEEP) { -- STRCPY(newval + strlen(newval), " ++bad=keep"); -+ rc = snprintf(newval + xlen, newval_len - xlen, " ++bad=keep"); -+ if (rc < 0) { -+ goto error; -+ } -+ xlen += (size_t)rc; - } else if (eap->bad_char == BAD_DROP) { -- STRCPY(newval + strlen(newval), " ++bad=drop"); -+ rc = snprintf(newval + xlen, newval_len - xlen, " ++bad=drop"); -+ if (rc < 0) { -+ goto error; -+ } -+ xlen += (size_t)rc; - } else if (eap->bad_char != 0) { -- snprintf(newval + strlen(newval), newval_len, " ++bad=%c", -- eap->bad_char); -+ rc = snprintf(newval + xlen, newval_len - xlen, " ++bad=%c", eap->bad_char); -+ if (rc < 0) { -+ goto error; -+ } -+ xlen += (size_t)rc; - } -+ -+ assert(xlen <= newval_len); -+ - vimvars[VV_CMDARG].vv_str = newval; - return oldval; -+ -+error: -+ xfree(oldval); -+ vimvars[VV_CMDARG].vv_str = oldarg; -+ return NULL; - } - - /// Check if variable "name[len]" is a local variable or an argument. --- -2.39.2 - diff --git a/neovim-fix-fortify-source.patch b/neovim-fix-fortify-source.patch deleted file mode 100644 index 4d14058..0000000 --- a/neovim-fix-fortify-source.patch +++ /dev/null @@ -1,39 +0,0 @@ -Index: neovim-0.8.2/CMakeLists.txt -=================================================================== ---- neovim-0.8.2.orig/CMakeLists.txt 2022-12-29 17:12:10.000000000 +0100 -+++ neovim-0.8.2/CMakeLists.txt 2022-12-30 10:33:00.250094998 +0100 -@@ -203,34 +203,6 @@ if(${INIT_FLAGS_NAME}) - set(CMAKE_REQUIRED_FLAGS "${${INIT_FLAGS_NAME}}") - endif() - --# Include because some toolchains define _FORTIFY_SOURCE=2 in --# internal header files, which should in turn be #included by . --check_c_source_compiles(" --#include -- --#if defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 1 --#error \"_FORTIFY_SOURCE > 1\" --#endif --int --main(void) --{ -- return 0; --} --" HAS_ACCEPTABLE_FORTIFY) -- --if(NOT HAS_ACCEPTABLE_FORTIFY) -- message(STATUS "Unsupported _FORTIFY_SOURCE found, forcing _FORTIFY_SOURCE=1") -- # Extract possible prefix to _FORTIFY_SOURCE (e.g. -Wp,-D_FORTIFY_SOURCE). -- STRING(REGEX MATCH "[^\ ]+-D_FORTIFY_SOURCE" _FORTIFY_SOURCE_PREFIX "${CMAKE_C_FLAGS}") -- STRING(REPLACE "-D_FORTIFY_SOURCE" "" _FORTIFY_SOURCE_PREFIX "${_FORTIFY_SOURCE_PREFIX}" ) -- if(NOT _FORTIFY_SOURCE_PREFIX STREQUAL "") -- message(STATUS "Detected _FORTIFY_SOURCE Prefix=${_FORTIFY_SOURCE_PREFIX}") -- endif() -- # -U in add_definitions doesn't end up in the correct spot, so we add it to -- # the flags variable instead. -- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${_FORTIFY_SOURCE_PREFIX}-U_FORTIFY_SOURCE ${_FORTIFY_SOURCE_PREFIX}-D_FORTIFY_SOURCE=1") --endif() -- - # Remove --sort-common from linker flags, as this seems to cause bugs (see #2641, #3374). - # TODO: Figure out the root cause. - if(CMAKE_EXE_LINKER_FLAGS MATCHES "--sort-common" OR diff --git a/neovim.spec b/neovim.spec index f858ec4..b38935c 100644 --- a/neovim.spec +++ b/neovim.spec @@ -21,8 +21,8 @@ %endif %endif -%global luv_min_ver 1.42.0 -%global tree_sitter_min_ver 0.20.3 +%global luv_min_ver 1.43.0 +%global tree_sitter_min_ver 0.20.8 %if %{with luajit} %global luajit_version 2.1 @@ -39,8 +39,8 @@ %endif Name: neovim -Version: 0.8.3 -Release: 4%{?dist} +Version: 0.9.0 +Release: 1%{?dist} License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility @@ -50,10 +50,6 @@ Source0: https://github.com/neovim/neovim/archive/v%{version}/%{name}-%{v Source1: sysinit.vim Source2: spec-template -Patch0: neovim-fix-fortify-source.patch -Patch1: https://github.com/neovim/neovim/pull/22780.patch -Patch2: https://github.com/neovim/neovim/pull/22729.patch - Patch1000: neovim-lua-bit32.patch BuildRequires: gcc-c++ @@ -113,9 +109,6 @@ parts of Vim, without compromise, and more. %prep %setup -q -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 %if %{without luajit} %patch1000 -p1 @@ -129,9 +122,11 @@ USERNAME=koji -DPREFER_LUA=%{?with_luajit:OFF}%{!?with_luajit:ON} \ -DLUA_PRG=%{lua_prg} \ -DENABLE_JEMALLOC=%{?with_jemalloc:ON}%{!?with_jemalloc:OFF} \ - -DLIBLUV_INCLUDE_DIR=%{luv_include_dir} \ - -DLIBLUV_LIBRARY=%{luv_library} + -DLIBLUV_INCLUDE_DIR:PATH=%{luv_include_dir} \ + -DLIBLUV_LIBRARY:FILEPATH=%{luv_library} +# HACK: Replace -lluv with the correct path +sed -i 's#-lluv#%{luv_library}#' %{__cmake_builddir}/src/nvim/CMakeFiles/nvim.dir/link.txt %cmake_build %install @@ -168,7 +163,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime %{_datadir}/nvim/runtime/bugreport.vim %{_datadir}/nvim/runtime/delmenu.vim -%{_datadir}/nvim/runtime/filetype.vim %{_datadir}/nvim/runtime/filetype.lua %{_datadir}/nvim/runtime/ftoff.vim %{_datadir}/nvim/runtime/ftplugin.vim @@ -179,15 +173,17 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/makemenu.vim %{_datadir}/nvim/runtime/menu.vim %{_datadir}/nvim/runtime/mswin.vim +%{_datadir}/nvim/runtime/neovim.ico %{_datadir}/nvim/runtime/optwin.vim -%{_datadir}/nvim/runtime/scripts.vim %{_datadir}/nvim/runtime/synmenu.vim %dir %{_datadir}/nvim/runtime/autoload +%{_datadir}/nvim/runtime/autoload/README.txt %{_datadir}/nvim/runtime/autoload/RstFold.vim %{_datadir}/nvim/runtime/autoload/ada.vim %{_datadir}/nvim/runtime/autoload/adacomplete.vim %{_datadir}/nvim/runtime/autoload/bitbake.vim +%{_datadir}/nvim/runtime/autoload/ccomplete.lua %{_datadir}/nvim/runtime/autoload/ccomplete.vim %{_datadir}/nvim/runtime/autoload/clojurecomplete.vim %{_datadir}/nvim/runtime/autoload/context.vim @@ -199,7 +195,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/autoload/gzip.vim %{_datadir}/nvim/runtime/autoload/haskellcomplete.vim %{_datadir}/nvim/runtime/autoload/health.vim -%{_datadir}/nvim/runtime/autoload/health/nvim.vim %{_datadir}/nvim/runtime/autoload/health/provider.vim %{_datadir}/nvim/runtime/autoload/htmlcomplete.vim %{_datadir}/nvim/runtime/autoload/javascriptcomplete.vim @@ -229,9 +224,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/autoload/xmlformat.vim %{_datadir}/nvim/runtime/autoload/zip.vim -%dir %{_datadir}/nvim/runtime/autoload/dist -%{_datadir}/nvim/runtime/autoload/dist/ft.vim - %dir %{_datadir}/nvim/runtime/autoload/provider %{_datadir}/nvim/runtime/autoload/provider/clipboard.vim %{_datadir}/nvim/runtime/autoload/provider/node.vim @@ -260,7 +252,11 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/autoload/xml/html40t.vim %{_datadir}/nvim/runtime/autoload/xml/html401f.vim +%dir %{_datadir}/nvim/runtime/autoload/zig +%{_datadir}/nvim/runtime/autoload/zig/fmt.vim + %dir %{_datadir}/nvim/runtime/colors +%{_datadir}/nvim/runtime/colors/README.txt %{_datadir}/nvim/runtime/colors/blue.vim %{_datadir}/nvim/runtime/colors/darkblue.vim %{_datadir}/nvim/runtime/colors/default.vim @@ -284,6 +280,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/colors/zellner.vim %dir %{_datadir}/nvim/runtime/compiler +%{_datadir}/nvim/runtime/compiler/README.txt %{_datadir}/nvim/runtime/compiler/ant.vim %{_datadir}/nvim/runtime/compiler/bcc.vim %{_datadir}/nvim/runtime/compiler/bdf.vim @@ -295,7 +292,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/compiler/csslint.vim %{_datadir}/nvim/runtime/compiler/cucumber.vim %{_datadir}/nvim/runtime/compiler/dart.vim -%{_datadir}/nvim/runtime/compiler/dart2js.vim +%{_datadir}/nvim/runtime/compiler/dart2js.vim %{_datadir}/nvim/runtime/compiler/dart2native.vim %{_datadir}/nvim/runtime/compiler/dartanalyser.vim %{_datadir}/nvim/runtime/compiler/dartdevc.vim @@ -303,6 +300,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/compiler/dartfmt.vim %{_datadir}/nvim/runtime/compiler/decada.vim %{_datadir}/nvim/runtime/compiler/dot.vim +%{_datadir}/nvim/runtime/compiler/dotnet.vim %{_datadir}/nvim/runtime/compiler/erlang.vim %{_datadir}/nvim/runtime/compiler/eruby.vim %{_datadir}/nvim/runtime/compiler/eslint.vim @@ -387,6 +385,10 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/compiler/xmlwf.vim %{_datadir}/nvim/runtime/compiler/xo.vim %{_datadir}/nvim/runtime/compiler/yamllint.vim +%{_datadir}/nvim/runtime/compiler/zig.vim +%{_datadir}/nvim/runtime/compiler/zig_build.vim +%{_datadir}/nvim/runtime/compiler/zig_build_exe.vim +%{_datadir}/nvim/runtime/compiler/zig_test.vim %{_datadir}/nvim/runtime/compiler/zsh.vim %dir %{_datadir}/nvim/runtime/doc @@ -404,6 +406,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/doc/diagnostic.txt %{_datadir}/nvim/runtime/doc/diff.txt %{_datadir}/nvim/runtime/doc/digraph.txt +%{_datadir}/nvim/runtime/doc/editorconfig.txt %{_datadir}/nvim/runtime/doc/editing.txt %{_datadir}/nvim/runtime/doc/eval.txt %{_datadir}/nvim/runtime/doc/filetype.txt @@ -417,7 +420,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/doc/hebrew.txt %{_datadir}/nvim/runtime/doc/help.txt %{_datadir}/nvim/runtime/doc/helphelp.txt -%{_datadir}/nvim/runtime/doc/if_cscop.txt %{_datadir}/nvim/runtime/doc/if_perl.txt %{_datadir}/nvim/runtime/doc/if_pyth.txt %{_datadir}/nvim/runtime/doc/if_ruby.txt @@ -437,6 +439,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/doc/message.txt %{_datadir}/nvim/runtime/doc/mlang.txt %{_datadir}/nvim/runtime/doc/motion.txt +%{_datadir}/nvim/runtime/doc/news.txt %{_datadir}/nvim/runtime/doc/nvim.txt %{_datadir}/nvim/runtime/doc/nvim_terminal_emulator.txt %{_datadir}/nvim/runtime/doc/options.txt @@ -450,7 +453,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/doc/pi_tar.txt %{_datadir}/nvim/runtime/doc/pi_tutor.txt %{_datadir}/nvim/runtime/doc/pi_zip.txt -%{_datadir}/nvim/runtime/doc/print.txt %{_datadir}/nvim/runtime/doc/provider.txt %{_datadir}/nvim/runtime/doc/quickfix.txt %{_datadir}/nvim/runtime/doc/quickref.txt @@ -465,6 +467,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/doc/spell.txt %{_datadir}/nvim/runtime/doc/starting.txt %{_datadir}/nvim/runtime/doc/syntax.txt +%{_datadir}/nvim/runtime/doc/support.txt %{_datadir}/nvim/runtime/doc/tabpage.txt %{_datadir}/nvim/runtime/doc/tags %{_datadir}/nvim/runtime/doc/tagsrch.txt @@ -516,6 +519,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/ftplugin %{_datadir}/nvim/runtime/ftplugin/8th.vim +%{_datadir}/nvim/runtime/ftplugin/README.txt %{_datadir}/nvim/runtime/ftplugin/a2ps.vim %{_datadir}/nvim/runtime/ftplugin/aap.vim %{_datadir}/nvim/runtime/ftplugin/abap.vim @@ -523,6 +527,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/ada.vim %{_datadir}/nvim/runtime/ftplugin/alsaconf.vim %{_datadir}/nvim/runtime/ftplugin/ant.vim +%{_datadir}/nvim/runtime/ftplugin/apache.vim %{_datadir}/nvim/runtime/ftplugin/arch.vim %{_datadir}/nvim/runtime/ftplugin/art.vim %{_datadir}/nvim/runtime/ftplugin/asm.vim @@ -536,8 +541,10 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/bst.vim %{_datadir}/nvim/runtime/ftplugin/btm.vim %{_datadir}/nvim/runtime/ftplugin/bzl.vim +%{_datadir}/nvim/runtime/ftplugin/c.lua %{_datadir}/nvim/runtime/ftplugin/c.vim %{_datadir}/nvim/runtime/ftplugin/calendar.vim +%{_datadir}/nvim/runtime/ftplugin/calender.lua %{_datadir}/nvim/runtime/ftplugin/cdrdaoconf.vim %{_datadir}/nvim/runtime/ftplugin/cfg.vim %{_datadir}/nvim/runtime/ftplugin/ch.vim @@ -558,6 +565,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/cs.vim %{_datadir}/nvim/runtime/ftplugin/csc.vim %{_datadir}/nvim/runtime/ftplugin/csh.vim +%{_datadir}/nvim/runtime/ftplugin/css.lua %{_datadir}/nvim/runtime/ftplugin/css.vim %{_datadir}/nvim/runtime/ftplugin/cucumber.vim %{_datadir}/nvim/runtime/ftplugin/cvsrc.vim @@ -587,6 +595,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/falcon.vim %{_datadir}/nvim/runtime/ftplugin/fennel.vim %{_datadir}/nvim/runtime/ftplugin/fetchmail.vim +%{_datadir}/nvim/runtime/ftplugin/fish.vim %{_datadir}/nvim/runtime/ftplugin/flexwiki.vim %{_datadir}/nvim/runtime/ftplugin/fortran.vim %{_datadir}/nvim/runtime/ftplugin/fpcmake.vim @@ -622,6 +631,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/htmldjango.vim %{_datadir}/nvim/runtime/ftplugin/i3config.vim %{_datadir}/nvim/runtime/ftplugin/icon.vim +%{_datadir}/nvim/runtime/ftplugin/indent.lua %{_datadir}/nvim/runtime/ftplugin/indent.vim %{_datadir}/nvim/runtime/ftplugin/initex.vim %{_datadir}/nvim/runtime/ftplugin/ishd.vim @@ -650,7 +660,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/logtalk.dict %{_datadir}/nvim/runtime/ftplugin/logtalk.vim %{_datadir}/nvim/runtime/ftplugin/lprolog.vim -%{_datadir}/nvim/runtime/ftplugin/lua.lua %{_datadir}/nvim/runtime/ftplugin/lua.vim %{_datadir}/nvim/runtime/ftplugin/lynx.vim %{_datadir}/nvim/runtime/ftplugin/m3build.vim @@ -665,12 +674,13 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/markdown.vim %{_datadir}/nvim/runtime/ftplugin/masm.vim %{_datadir}/nvim/runtime/ftplugin/matlab.vim +%{_datadir}/nvim/runtime/ftplugin/mermaid.vim %{_datadir}/nvim/runtime/ftplugin/meson.vim %{_datadir}/nvim/runtime/ftplugin/mf.vim %{_datadir}/nvim/runtime/ftplugin/mma.vim %{_datadir}/nvim/runtime/ftplugin/modconf.vim -%{_datadir}/nvim/runtime/ftplugin/modula2.vim -%{_datadir}/nvim/runtime/ftplugin/modula3.vim +%{_datadir}/nvim/runtime/ftplugin/modula2.vim +%{_datadir}/nvim/runtime/ftplugin/modula3.vim %{_datadir}/nvim/runtime/ftplugin/mp.vim %{_datadir}/nvim/runtime/ftplugin/mplayerconf.vim %{_datadir}/nvim/runtime/ftplugin/mrxvtrc.vim @@ -683,9 +693,11 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/nroff.vim %{_datadir}/nvim/runtime/ftplugin/nsis.vim %{_datadir}/nvim/runtime/ftplugin/objc.vim +%{_datadir}/nvim/runtime/ftplugin/obse.vim %{_datadir}/nvim/runtime/ftplugin/ocaml.vim %{_datadir}/nvim/runtime/ftplugin/occam.vim %{_datadir}/nvim/runtime/ftplugin/octave.vim +%{_datadir}/nvim/runtime/ftplugin/openvpn.vim %{_datadir}/nvim/runtime/ftplugin/pamconf.vim %{_datadir}/nvim/runtime/ftplugin/pascal.vim %{_datadir}/nvim/runtime/ftplugin/passwd.vim @@ -696,6 +708,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/pinfo.vim %{_datadir}/nvim/runtime/ftplugin/plaintex.vim %{_datadir}/nvim/runtime/ftplugin/pod.vim +%{_datadir}/nvim/runtime/ftplugin/poefilter.vim %{_datadir}/nvim/runtime/ftplugin/poke.vim %{_datadir}/nvim/runtime/ftplugin/postscr.vim %{_datadir}/nvim/runtime/ftplugin/procmail.vim @@ -708,6 +721,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/qb64.vim %{_datadir}/nvim/runtime/ftplugin/qf.vim %{_datadir}/nvim/runtime/ftplugin/quake.vim +%{_datadir}/nvim/runtime/ftplugin/quarto.vim %{_datadir}/nvim/runtime/ftplugin/query.lua %{_datadir}/nvim/runtime/ftplugin/r.vim %{_datadir}/nvim/runtime/ftplugin/racc.vim @@ -736,7 +750,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/sensors.vim %{_datadir}/nvim/runtime/ftplugin/services.vim %{_datadir}/nvim/runtime/ftplugin/setserial.vim -%{_datadir}/nvim/runtime/ftplugin/sexplib.vim +%{_datadir}/nvim/runtime/ftplugin/sexplib.vim %{_datadir}/nvim/runtime/ftplugin/sgml.vim %{_datadir}/nvim/runtime/ftplugin/sh.vim %{_datadir}/nvim/runtime/ftplugin/shada.vim @@ -747,6 +761,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/solution.vim %{_datadir}/nvim/runtime/ftplugin/spec.vim %{_datadir}/nvim/runtime/ftplugin/sql.vim +%{_datadir}/nvim/runtime/ftplugin/ssa.vim %{_datadir}/nvim/runtime/ftplugin/sshconfig.vim %{_datadir}/nvim/runtime/ftplugin/sudoers.vim %{_datadir}/nvim/runtime/ftplugin/svg.vim @@ -762,9 +777,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/terminfo.vim %{_datadir}/nvim/runtime/ftplugin/tex.vim %{_datadir}/nvim/runtime/ftplugin/text.vim -%{_datadir}/nvim/runtime/ftplugin/tidy.vim +%{_datadir}/nvim/runtime/ftplugin/tidy.vim %{_datadir}/nvim/runtime/ftplugin/tmux.vim -%{_datadir}/nvim/runtime/ftplugin/toml.vim +%{_datadir}/nvim/runtime/ftplugin/toml.vim %{_datadir}/nvim/runtime/ftplugin/treetop.vim %{_datadir}/nvim/runtime/ftplugin/tt2html.vim %{_datadir}/nvim/runtime/ftplugin/tutor.vim @@ -784,6 +799,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/wast.vim %{_datadir}/nvim/runtime/ftplugin/wget.vim %{_datadir}/nvim/runtime/ftplugin/wget2.vim +%{_datadir}/nvim/runtime/ftplugin/xdefaults.lua %{_datadir}/nvim/runtime/ftplugin/xdefaults.vim %{_datadir}/nvim/runtime/ftplugin/xf86conf.vim %{_datadir}/nvim/runtime/ftplugin/xhtml.vim @@ -794,10 +810,13 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/xsd.vim %{_datadir}/nvim/runtime/ftplugin/xslt.vim %{_datadir}/nvim/runtime/ftplugin/yaml.vim +%{_datadir}/nvim/runtime/ftplugin/zig.vim %{_datadir}/nvim/runtime/ftplugin/zimbu.vim %{_datadir}/nvim/runtime/ftplugin/zsh.vim %dir %{_datadir}/nvim/runtime/indent +%{_datadir}/nvim/runtime/indent/Makefile +%{_datadir}/nvim/runtime/indent/README.txt %{_datadir}/nvim/runtime/indent/aap.vim %{_datadir}/nvim/runtime/indent/ada.vim %{_datadir}/nvim/runtime/indent/ant.vim @@ -842,6 +861,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/expect.vim %{_datadir}/nvim/runtime/indent/falcon.vim %{_datadir}/nvim/runtime/indent/fennel.vim +%{_datadir}/nvim/runtime/indent/fish.vim %{_datadir}/nvim/runtime/indent/fortran.vim %{_datadir}/nvim/runtime/indent/framescript.vim %{_datadir}/nvim/runtime/indent/freebasic.vim @@ -883,6 +903,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/nginx.vim %{_datadir}/nvim/runtime/indent/nsis.vim %{_datadir}/nvim/runtime/indent/objc.vim +%{_datadir}/nvim/runtime/indent/obse.vim %{_datadir}/nvim/runtime/indent/ocaml.vim %{_datadir}/nvim/runtime/indent/occam.vim %{_datadir}/nvim/runtime/indent/pascal.vim @@ -895,6 +916,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/pyrex.vim %{_datadir}/nvim/runtime/indent/python.vim %{_datadir}/nvim/runtime/indent/qb64.vim +%{_datadir}/nvim/runtime/indent/quarto.vim %{_datadir}/nvim/runtime/indent/query.lua %{_datadir}/nvim/runtime/indent/r.vim %{_datadir}/nvim/runtime/indent/racket.vim @@ -945,13 +967,38 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/xslt.vim %{_datadir}/nvim/runtime/indent/yacc.vim %{_datadir}/nvim/runtime/indent/yaml.vim +%{_datadir}/nvim/runtime/indent/zig.vim %{_datadir}/nvim/runtime/indent/zimbu.vim %{_datadir}/nvim/runtime/indent/zsh.vim %dir %{_datadir}/nvim/runtime/indent/testdir/ +%{_datadir}/nvim/runtime/indent/testdir/README.txt +%{_datadir}/nvim/runtime/indent/testdir/bitbake.in +%{_datadir}/nvim/runtime/indent/testdir/bitbake.ok +%{_datadir}/nvim/runtime/indent/testdir/html.in +%{_datadir}/nvim/runtime/indent/testdir/html.ok +%{_datadir}/nvim/runtime/indent/testdir/krl.in +%{_datadir}/nvim/runtime/indent/testdir/krl.ok +%{_datadir}/nvim/runtime/indent/testdir/matlab.in +%{_datadir}/nvim/runtime/indent/testdir/matlab.ok +%{_datadir}/nvim/runtime/indent/testdir/python.in +%{_datadir}/nvim/runtime/indent/testdir/python.ok %{_datadir}/nvim/runtime/indent/testdir/runtest.vim +%{_datadir}/nvim/runtime/indent/testdir/sshconfig.in +%{_datadir}/nvim/runtime/indent/testdir/sshconfig.ok +%{_datadir}/nvim/runtime/indent/testdir/tcl.in +%{_datadir}/nvim/runtime/indent/testdir/tcl.ok +%{_datadir}/nvim/runtime/indent/testdir/vb.in +%{_datadir}/nvim/runtime/indent/testdir/vb.ok +%{_datadir}/nvim/runtime/indent/testdir/vim.in +%{_datadir}/nvim/runtime/indent/testdir/vim.ok +%{_datadir}/nvim/runtime/indent/testdir/xml.in +%{_datadir}/nvim/runtime/indent/testdir/xml.ok +%{_datadir}/nvim/runtime/indent/testdir/yaml.in +%{_datadir}/nvim/runtime/indent/testdir/yaml.ok %dir %{_datadir}/nvim/runtime/keymap +%{_datadir}/nvim/runtime/keymap/README.txt %{_datadir}/nvim/runtime/keymap/accents.vim %{_datadir}/nvim/runtime/keymap/arabic.vim %{_datadir}/nvim/runtime/keymap/arabic_utf-8.vim @@ -988,7 +1035,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/keymap/kana.vim %{_datadir}/nvim/runtime/keymap/kazakh-jcuken.vim %{_datadir}/nvim/runtime/keymap/korean-dubeolsik_utf-8.vim -%{_datadir}/nvim/runtime/keymap/korean.vim +%{_datadir}/nvim/runtime/keymap/korean.vim %{_datadir}/nvim/runtime/keymap/lithuanian-baltic.vim %{_datadir}/nvim/runtime/keymap/magyar_utf-8.vim %{_datadir}/nvim/runtime/keymap/mongolian_utf-8.vim @@ -1026,7 +1073,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/keymap/tamil_tscii.vim %{_datadir}/nvim/runtime/keymap/thaana-phonetic_utf-8.vim %{_datadir}/nvim/runtime/keymap/thaana.vim -%{_datadir}/nvim/runtime/keymap/turkish-f.vim +%{_datadir}/nvim/runtime/keymap/turkish-f.vim %{_datadir}/nvim/runtime/keymap/turkish-q.vim %{_datadir}/nvim/runtime/keymap/ukrainian-dvorak.vim %{_datadir}/nvim/runtime/keymap/ukrainian-jcuken.vim @@ -1035,17 +1082,20 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/keymap/vietnamese-vni_utf-8.vim %dir %{_datadir}/nvim/runtime/lua -%{_datadir}/nvim/runtime/lua/health.lua +%{_datadir}/nvim/runtime/lua/_vim9script.lua +%{_datadir}/nvim/runtime/lua/editorconfig.lua %{_datadir}/nvim/runtime/lua/man.lua -%dir %{_datadir}/nvim/runtime/lua/man -%{_datadir}/nvim/runtime/lua/man/health.lua +%dir %{_datadir}/nvim/runtime/lua/nvim +%{_datadir}/nvim/runtime/lua/nvim/health.lua %dir %{_datadir}/nvim/runtime/lua/vim %{_datadir}/nvim/runtime/lua/vim/F.lua %{_datadir}/nvim/runtime/lua/vim/_editor.lua %{_datadir}/nvim/runtime/lua/vim/_init_packages.lua +%{_datadir}/nvim/runtime/lua/vim/_inspector.lua %{_datadir}/nvim/runtime/lua/vim/_meta.lua +%{_datadir}/nvim/runtime/lua/vim/_watch.lua %{_datadir}/nvim/runtime/lua/vim/diagnostic.lua %{_datadir}/nvim/runtime/lua/vim/filetype.lua %{_datadir}/nvim/runtime/lua/vim/fs.lua @@ -1053,34 +1103,45 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/lua/vim/highlight.lua %{_datadir}/nvim/runtime/lua/vim/inspect.lua %{_datadir}/nvim/runtime/lua/vim/keymap.lua +%{_datadir}/nvim/runtime/lua/vim/loader.lua %{_datadir}/nvim/runtime/lua/vim/lsp.lua +%{_datadir}/nvim/runtime/lua/vim/secure.lua %{_datadir}/nvim/runtime/lua/vim/shared.lua %{_datadir}/nvim/runtime/lua/vim/treesitter.lua %{_datadir}/nvim/runtime/lua/vim/ui.lua %{_datadir}/nvim/runtime/lua/vim/uri.lua +%{_datadir}/nvim/runtime/lua/vim/version.lua %dir %{_datadir}/nvim/runtime/lua/vim/filetype/ %{_datadir}/nvim/runtime/lua/vim/filetype/detect.lua +%{_datadir}/nvim/runtime/lua/vim/filetype/options.lua %dir %{_datadir}/nvim/runtime/lua/vim/lsp/ %{_datadir}/nvim/runtime/lua/vim/lsp/_snippet.lua +%{_datadir}/nvim/runtime/lua/vim/lsp/_watchfiles.lua %{_datadir}/nvim/runtime/lua/vim/lsp/buf.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/codelens.lua +%{_datadir}/nvim/runtime/lua/vim/lsp/codelens.lua %{_datadir}/nvim/runtime/lua/vim/lsp/diagnostic.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/health.lua %{_datadir}/nvim/runtime/lua/vim/lsp/handlers.lua +%{_datadir}/nvim/runtime/lua/vim/lsp/health.lua %{_datadir}/nvim/runtime/lua/vim/lsp/log.lua %{_datadir}/nvim/runtime/lua/vim/lsp/protocol.lua %{_datadir}/nvim/runtime/lua/vim/lsp/rpc.lua +%{_datadir}/nvim/runtime/lua/vim/lsp/semantic_tokens.lua %{_datadir}/nvim/runtime/lua/vim/lsp/sync.lua %{_datadir}/nvim/runtime/lua/vim/lsp/tagfunc.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/util.lua +%{_datadir}/nvim/runtime/lua/vim/lsp/types.lua +%{_datadir}/nvim/runtime/lua/vim/lsp/util.lua %dir %{_datadir}/nvim/runtime/lua/vim/treesitter/ +%{_datadir}/nvim/runtime/lua/vim/treesitter/_fold.lua +%{_datadir}/nvim/runtime/lua/vim/treesitter/_meta.lua +%{_datadir}/nvim/runtime/lua/vim/treesitter/_range.lua %{_datadir}/nvim/runtime/lua/vim/treesitter/health.lua %{_datadir}/nvim/runtime/lua/vim/treesitter/highlighter.lua %{_datadir}/nvim/runtime/lua/vim/treesitter/language.lua %{_datadir}/nvim/runtime/lua/vim/treesitter/languagetree.lua +%{_datadir}/nvim/runtime/lua/vim/treesitter/playground.lua %{_datadir}/nvim/runtime/lua/vim/treesitter/query.lua %dir %{_datadir}/nvim/runtime/macros @@ -1099,7 +1160,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/pack/dist/opt/cfilter %dir %{_datadir}/nvim/runtime/pack/dist/opt/cfilter/plugin -%{_datadir}/nvim/runtime/pack/dist/opt/cfilter/plugin/cfilter.vim +%{_datadir}/nvim/runtime/pack/dist/opt/cfilter/plugin/cfilter.lua %dir %{_datadir}/nvim/runtime/pack/dist/opt/justify %dir %{_datadir}/nvim/runtime/pack/dist/opt/justify/plugin @@ -1138,12 +1199,14 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/pack/dist/opt/vimball/doc/vimball.txt %dir %{_datadir}/nvim/runtime/plugin +%{_datadir}/nvim/runtime/plugin/editorconfig.lua %{_datadir}/nvim/runtime/plugin/gzip.vim %{_datadir}/nvim/runtime/plugin/health.vim %{_datadir}/nvim/runtime/plugin/man.lua %{_datadir}/nvim/runtime/plugin/matchit.vim %{_datadir}/nvim/runtime/plugin/matchparen.vim %{_datadir}/nvim/runtime/plugin/netrwPlugin.vim +%{_datadir}/nvim/runtime/plugin/nvim.lua %{_datadir}/nvim/runtime/plugin/rplugin.vim %{_datadir}/nvim/runtime/plugin/shada.vim %{_datadir}/nvim/runtime/plugin/spellfile.vim @@ -1152,56 +1215,30 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/plugin/tutor.vim %{_datadir}/nvim/runtime/plugin/zipPlugin.vim -%dir %{_datadir}/nvim/runtime/print -%{_datadir}/nvim/runtime/print/ascii.ps -%{_datadir}/nvim/runtime/print/cidfont.ps -%{_datadir}/nvim/runtime/print/cns_roman.ps -%{_datadir}/nvim/runtime/print/cp1250.ps -%{_datadir}/nvim/runtime/print/cp1251.ps -%{_datadir}/nvim/runtime/print/cp1252.ps -%{_datadir}/nvim/runtime/print/cp1253.ps -%{_datadir}/nvim/runtime/print/cp1254.ps -%{_datadir}/nvim/runtime/print/cp1255.ps -%{_datadir}/nvim/runtime/print/cp1257.ps -%{_datadir}/nvim/runtime/print/gb_roman.ps -%{_datadir}/nvim/runtime/print/hp-roman8.ps -%{_datadir}/nvim/runtime/print/iso-8859-10.ps -%{_datadir}/nvim/runtime/print/iso-8859-11.ps -%{_datadir}/nvim/runtime/print/iso-8859-13.ps -%{_datadir}/nvim/runtime/print/iso-8859-14.ps -%{_datadir}/nvim/runtime/print/iso-8859-15.ps -%{_datadir}/nvim/runtime/print/iso-8859-2.ps -%{_datadir}/nvim/runtime/print/iso-8859-3.ps -%{_datadir}/nvim/runtime/print/iso-8859-4.ps -%{_datadir}/nvim/runtime/print/iso-8859-5.ps -%{_datadir}/nvim/runtime/print/iso-8859-7.ps -%{_datadir}/nvim/runtime/print/iso-8859-8.ps -%{_datadir}/nvim/runtime/print/iso-8859-9.ps -%{_datadir}/nvim/runtime/print/jis_roman.ps -%{_datadir}/nvim/runtime/print/koi8-r.ps -%{_datadir}/nvim/runtime/print/koi8-u.ps -%{_datadir}/nvim/runtime/print/ks_roman.ps -%{_datadir}/nvim/runtime/print/latin1.ps -%{_datadir}/nvim/runtime/print/mac-roman.ps -%{_datadir}/nvim/runtime/print/prolog.ps - %dir %{_datadir}/nvim/runtime/queries/ %dir %{_datadir}/nvim/runtime/queries/c/ +%{_datadir}/nvim/runtime/queries/c/folds.scm %{_datadir}/nvim/runtime/queries/c/highlights.scm %{_datadir}/nvim/runtime/queries/c/injections.scm -%dir %{_datadir}/nvim/runtime/queries/help/ -%{_datadir}/nvim/runtime/queries/help/highlights.scm -%{_datadir}/nvim/runtime/queries/help/injections.scm - %dir %{_datadir}/nvim/runtime/queries/lua/ +%{_datadir}/nvim/runtime/queries/lua/folds.scm %{_datadir}/nvim/runtime/queries/lua/highlights.scm %{_datadir}/nvim/runtime/queries/lua/injections.scm +%dir %{_datadir}/nvim/runtime/queries/query/ +%{_datadir}/nvim/runtime/queries/query/folds.scm +%{_datadir}/nvim/runtime/queries/query/highlights.scm + %dir %{_datadir}/nvim/runtime/queries/vim/ +%{_datadir}/nvim/runtime/queries/vim/folds.scm %{_datadir}/nvim/runtime/queries/vim/highlights.scm %{_datadir}/nvim/runtime/queries/vim/injections.scm +%dir %{_datadir}/nvim/runtime/queries/vimdoc/ +%{_datadir}/nvim/runtime/queries/vimdoc/highlights.scm +%{_datadir}/nvim/runtime/queries/vimdoc/injections.scm + %dir %{_datadir}/nvim/runtime/spell %{_datadir}/nvim/runtime/spell/cleanadd.vim %{_datadir}/nvim/runtime/spell/en.utf-8.spl @@ -1209,6 +1246,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/syntax %{_datadir}/nvim/runtime/syntax/2html.vim %{_datadir}/nvim/runtime/syntax/8th.vim +%{_datadir}/nvim/runtime/syntax/README.txt %{_datadir}/nvim/runtime/syntax/a2ps.vim %{_datadir}/nvim/runtime/syntax/a65.vim %{_datadir}/nvim/runtime/syntax/aap.vim @@ -1366,6 +1404,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/dylanlid.vim %{_datadir}/nvim/runtime/syntax/ecd.vim %{_datadir}/nvim/runtime/syntax/edif.vim +%{_datadir}/nvim/runtime/syntax/editorconfig.vim %{_datadir}/nvim/runtime/syntax/eiffel.vim %{_datadir}/nvim/runtime/syntax/elf.vim %{_datadir}/nvim/runtime/syntax/elinks.vim @@ -1389,6 +1428,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/fdcc.vim %{_datadir}/nvim/runtime/syntax/fetchmail.vim %{_datadir}/nvim/runtime/syntax/fgl.vim +%{_datadir}/nvim/runtime/syntax/fish.vim %{_datadir}/nvim/runtime/syntax/flexwiki.vim %{_datadir}/nvim/runtime/syntax/focexec.vim %{_datadir}/nvim/runtime/syntax/form.vim @@ -1498,6 +1538,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/kwt.vim %{_datadir}/nvim/runtime/syntax/lace.vim %{_datadir}/nvim/runtime/syntax/latte.vim +%{_datadir}/nvim/runtime/syntax/lc.vim %{_datadir}/nvim/runtime/syntax/ld.vim %{_datadir}/nvim/runtime/syntax/ldapconf.vim %{_datadir}/nvim/runtime/syntax/ldif.vim @@ -1546,6 +1587,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/matlab.vim %{_datadir}/nvim/runtime/syntax/maxima.vim %{_datadir}/nvim/runtime/syntax/mel.vim +%{_datadir}/nvim/runtime/syntax/mermaid.vim %{_datadir}/nvim/runtime/syntax/meson.vim %{_datadir}/nvim/runtime/syntax/messages.vim %{_datadir}/nvim/runtime/syntax/mf.vim @@ -1586,6 +1628,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/netrw.vim %{_datadir}/nvim/runtime/syntax/nginx.vim %{_datadir}/nvim/runtime/syntax/ninja.vim +%{_datadir}/nvim/runtime/syntax/nix.vim %{_datadir}/nvim/runtime/syntax/nosyntax.vim %{_datadir}/nvim/runtime/syntax/nqc.vim %{_datadir}/nvim/runtime/syntax/nroff.vim @@ -1593,12 +1636,14 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/obj.vim %{_datadir}/nvim/runtime/syntax/objc.vim %{_datadir}/nvim/runtime/syntax/objcpp.vim +%{_datadir}/nvim/runtime/syntax/obse.vim %{_datadir}/nvim/runtime/syntax/ocaml.vim %{_datadir}/nvim/runtime/syntax/occam.vim %{_datadir}/nvim/runtime/syntax/omnimark.vim %{_datadir}/nvim/runtime/syntax/opam.vim %{_datadir}/nvim/runtime/syntax/openroad.vim %{_datadir}/nvim/runtime/syntax/openscad.vim +%{_datadir}/nvim/runtime/syntax/openvpn.vim %{_datadir}/nvim/runtime/syntax/opl.vim %{_datadir}/nvim/runtime/syntax/ora.vim %{_datadir}/nvim/runtime/syntax/pamconf.vim @@ -1627,6 +1672,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/plsql.vim %{_datadir}/nvim/runtime/syntax/po.vim %{_datadir}/nvim/runtime/syntax/pod.vim +%{_datadir}/nvim/runtime/syntax/poefilter.vim %{_datadir}/nvim/runtime/syntax/poke.vim %{_datadir}/nvim/runtime/syntax/postscr.vim %{_datadir}/nvim/runtime/syntax/pov.vim @@ -1649,9 +1695,11 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/purifylog.vim %{_datadir}/nvim/runtime/syntax/pyrex.vim %{_datadir}/nvim/runtime/syntax/python.vim +%{_datadir}/nvim/runtime/syntax/python2.vim %{_datadir}/nvim/runtime/syntax/qb64.vim %{_datadir}/nvim/runtime/syntax/qf.vim %{_datadir}/nvim/runtime/syntax/quake.vim +%{_datadir}/nvim/runtime/syntax/quarto.vim %{_datadir}/nvim/runtime/syntax/query.lua %{_datadir}/nvim/runtime/syntax/r.vim %{_datadir}/nvim/runtime/syntax/racc.vim @@ -1759,6 +1807,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/squirrel.vim %{_datadir}/nvim/runtime/syntax/srec.vim %{_datadir}/nvim/runtime/syntax/srt.vim +%{_datadir}/nvim/runtime/syntax/ssa.vim %{_datadir}/nvim/runtime/syntax/sshconfig.vim %{_datadir}/nvim/runtime/syntax/sshdconfig.vim %{_datadir}/nvim/runtime/syntax/st.vim @@ -1848,6 +1897,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/vue.vim %{_datadir}/nvim/runtime/syntax/wast.vim %{_datadir}/nvim/runtime/syntax/wdiff.vim +%{_datadir}/nvim/runtime/syntax/wdl.vim %{_datadir}/nvim/runtime/syntax/web.vim %{_datadir}/nvim/runtime/syntax/webmacro.vim %{_datadir}/nvim/runtime/syntax/wget.vim @@ -1877,12 +1927,18 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/yacc.vim %{_datadir}/nvim/runtime/syntax/yaml.vim %{_datadir}/nvim/runtime/syntax/z8a.vim +%{_datadir}/nvim/runtime/syntax/zig.vim %{_datadir}/nvim/runtime/syntax/zimbu.vim +%{_datadir}/nvim/runtime/syntax/zir.vim %{_datadir}/nvim/runtime/syntax/zsh.vim %dir %{_datadir}/nvim/runtime/syntax/vim %{_datadir}/nvim/runtime/syntax/vim/generated.vim +%dir %{_datadir}/nvim/runtime/syntax/shared +%{_datadir}/nvim/runtime/syntax/shared/README.txt +%{_datadir}/nvim/runtime/syntax/shared/hgcommitDiff.vim + %dir %{_datadir}/nvim/runtime/tools %{_datadir}/nvim/runtime/tools/check_colors.vim %{_datadir}/nvim/runtime/tools/emoji_list.vim @@ -1896,6 +1952,10 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Fri Apr 07 2023 Andreas Schneider - 0.9.0-1 +- Update to version 0.9.0 + * For changelog see `:help news` + * Mon Mar 27 2023 Andreas Schneider - 0.8.3-4 - resolves: rhbz#2181836 - Fix snprintf buffer overflow with tags diff --git a/sources b/sources index c56bda3..bde8f1c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (neovim-0.8.3.tar.gz) = 0ecf60b564a323eb95eb2e67f7dc7e1c1e7bfc70b08466a66eb668d1b75a7362ca42901cd5a64fda22292375e2921ba61c299ac846f820ac146dc55426813eb8 +SHA512 (neovim-0.9.0.tar.gz) = e42f09f408b83fc34e8f169321e0349d1f851e67a998265c53d2ddb1a4792c3f4777fabe32baf2c7eff7d3745ff60d4a07da542ccd272883f7f4e080b2c9c1bf From 422ac1ad6d56df8ba00d07d25b3f6e57c732044e Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Fri, 7 Apr 2023 18:49:10 +0200 Subject: [PATCH 07/60] Update neovim-lua-bit32.patch --- neovim-lua-bit32.patch | 24 ++++++++++++------------ neovim.spec | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/neovim-lua-bit32.patch b/neovim-lua-bit32.patch index c339ee2..706c0dd 100644 --- a/neovim-lua-bit32.patch +++ b/neovim-lua-bit32.patch @@ -1,30 +1,30 @@ -Index: neovim-0.8.0/CMakeLists.txt +Index: neovim-0.9.0/CMakeLists.txt =================================================================== ---- neovim-0.8.0.orig/CMakeLists.txt 2022-09-30 17:15:13.000000000 +0200 -+++ neovim-0.8.0/CMakeLists.txt 2022-10-01 07:03:31.650272466 +0200 -@@ -548,7 +548,7 @@ endforeach() +--- neovim-0.9.0.orig/CMakeLists.txt 2023-04-07 18:47:09.146841186 +0200 ++++ neovim-0.9.0/CMakeLists.txt 2023-04-07 18:47:39.100006585 +0200 +@@ -163,7 +163,7 @@ foreach(CFGNAME ${CMAKE_CONFIGURATION_TY + set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${CFGNAME} ${CMAKE_BINARY_DIR}/lib) + endforeach() - # Find Lua interpreter - include(LuaHelpers) -set(LUA_DEPENDENCIES lpeg mpack bit) +set(LUA_DEPENDENCIES lpeg mpack bit32) if(NOT LUA_PRG) foreach(CURRENT_LUA_PRG luajit lua5.1 lua5.2 lua) unset(_CHECK_LUA_PRG CACHE) -Index: neovim-0.8.0/src/nvim/ex_cmds.lua +Index: neovim-0.9.0/src/nvim/ex_cmds.lua =================================================================== ---- neovim-0.8.0.orig/src/nvim/ex_cmds.lua 2022-09-30 17:15:13.000000000 +0200 -+++ neovim-0.8.0/src/nvim/ex_cmds.lua 2022-10-01 07:03:31.651272464 +0200 +--- neovim-0.9.0.orig/src/nvim/ex_cmds.lua 2023-04-07 18:47:05.066818656 +0200 ++++ neovim-0.9.0/src/nvim/ex_cmds.lua 2023-04-07 18:47:09.147841191 +0200 @@ -1,4 +1,4 @@ -local bit = require 'bit' +local bit = require 'bit32' local module = {} -Index: neovim-0.8.0/src/nvim/generators/gen_ex_cmds.lua +Index: neovim-0.9.0/src/nvim/generators/gen_ex_cmds.lua =================================================================== ---- neovim-0.8.0.orig/src/nvim/generators/gen_ex_cmds.lua 2022-09-30 17:15:13.000000000 +0200 -+++ neovim-0.8.0/src/nvim/generators/gen_ex_cmds.lua 2022-10-01 07:03:31.651272464 +0200 +--- neovim-0.9.0.orig/src/nvim/generators/gen_ex_cmds.lua 2023-04-07 18:47:05.066818656 +0200 ++++ neovim-0.9.0/src/nvim/generators/gen_ex_cmds.lua 2023-04-07 18:47:09.147841191 +0200 @@ -22,7 +22,7 @@ local defsfname = autodir .. '/ex_cmds_d local enumfile = io.open(enumfname, 'w') local defsfile = io.open(defsfname, 'w') diff --git a/neovim.spec b/neovim.spec index b38935c..4380c07 100644 --- a/neovim.spec +++ b/neovim.spec @@ -111,7 +111,7 @@ parts of Vim, without compromise, and more. %setup -q %if %{without luajit} -%patch1000 -p1 +%patch -P 1000 -p1 %endif %build From beac72cb7d939d45765426cfbf5d15b3413e85fd Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Fri, 14 Apr 2023 09:27:06 +0200 Subject: [PATCH 08/60] Use pkgconfig for BR and recommend wl-clipboard --- neovim.spec | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/neovim.spec b/neovim.spec index 4380c07..92cef70 100644 --- a/neovim.spec +++ b/neovim.spec @@ -80,13 +80,13 @@ BuildRequires: lua5.1-mpack BuildRequires: jemalloc-devel %endif BuildRequires: msgpack-devel >= 3.1.0 -BuildRequires: libtermkey-devel -BuildRequires: libuv-devel >= 1.42.0 -BuildRequires: libvterm-devel >= 0.3 +BuildRequires: pkgconfig(termkey) +BuildRequires: pkgconfig(libuv) >= 1.42.0 +BuildRequires: pkgconfig(vterm) >= 0.3 # need the build with the fix for the resize buffer issue Requires: libvterm >= 0.3 -BuildRequires: unibilium-devel -BuildRequires: libtree-sitter-devel >= %{tree_sitter_min_ver} +BuildRequires: pkgconfig(unibilium) +BuildRequires: pkgconfig(libtree-sitter) >= %{tree_sitter_min_ver} # tree-sitter didn't do an soname bump. enforce the min version # see https://github.com/nvim-treesitter/nvim-treesitter/pull/3055/files Requires: libtree-sitter >= %{tree_sitter_min_ver} @@ -96,6 +96,7 @@ Suggests: (python2-neovim if python2) Suggests: (python3-neovim if python3) # XSel provides access to the system clipboard Recommends: xsel +Recommends: wl-clipboard %description Neovim is a refactor - and sometimes redactor - in the tradition of From df63fe8ae7c12d63d0a91254efcee37b9688d545 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Fri, 21 Apr 2023 13:47:26 +0200 Subject: [PATCH 09/60] Fix buffer overflow for user command resolves: rhbz#2188229 --- 23245.patch | 338 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 23246.patch | 150 +++++++++++++++++++++++ neovim.spec | 10 +- 3 files changed, 496 insertions(+), 2 deletions(-) create mode 100644 23245.patch create mode 100644 23246.patch diff --git a/23245.patch b/23245.patch new file mode 100644 index 0000000..5fc5c0c --- /dev/null +++ b/23245.patch @@ -0,0 +1,338 @@ +From b2a43b5287976f0bdbc43690038d9ae37610ff00 Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Fri, 21 Apr 2023 10:55:36 +0200 +Subject: [PATCH 1/8] fix(api): avoid integer truncation +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +gsrc/nvim/api/vim.c: In function ‘nvim_eval_statusline’: +gsrc/nvim/api/vim.c:2268:55: warning: ‘%d’ directive output may be truncated writing between 1 and 10 bytes into a region of size 2 [-Wformat-tru +ncation=] + 2268 | snprintf(user_group, sizeof(user_group), "User%d", sp->userhl); + | ^~ +gsrc/nvim/api/vim.c:2268:50: note: directive argument in the range [1, 2147483647] + 2268 | snprintf(user_group, sizeof(user_group), "User%d", sp->userhl); + | ^~~~~~~~ +In file included from /usr/include/stdio.h:906, + from gsrc/nvim/api/vim.c:9: +In function ‘snprintf’, + inlined from ‘nvim_eval_statusline’ at gsrc/nvim/api/vim.c:2268:9: +/usr/include/bits/stdio2.h:54:10: note: ‘__builtin___snprintf_chk’ output between 6 and 15 bytes into a destination of size 6 + 54 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1, + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 55 | __glibc_objsize (__s), __fmt, + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 56 | __va_arg_pack ()); + | ~~~~~~~~~~~~~~~~~ + +(cherry picked from commit ef7ae66eef4e36e15b5248b926b4b020387d8101) +--- + src/nvim/api/vim.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/nvim/api/vim.c b/src/nvim/api/vim.c +index c8bb22b33c0c1..d47f47e63863b 100644 +--- a/src/nvim/api/vim.c ++++ b/src/nvim/api/vim.c +@@ -2241,7 +2241,7 @@ Dictionary nvim_eval_statusline(String str, Dict(eval_statusline) *opts, Error * + if (highlights) { + Array hl_values = ARRAY_DICT_INIT; + const char *grpname; +- char user_group[6]; ++ char user_group[15]; // strlen("User") + strlen("2147483647") + NUL + + // If first character doesn't have a defined highlight, + // add the default highlight at the beginning of the highlight list + +From b91278c4fa8f7bb319213e9cc47951795b9fda92 Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Fri, 21 Apr 2023 10:58:46 +0200 +Subject: [PATCH 2/8] fix(drawline): initialize variable +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +src/nvim/drawline.c: In function ‘draw_virt_text’: +src/nvim/drawline.c:298:28: warning: ‘col’ may be used uninitialized [-Wmaybe-uninitialized] + 298 | state->eol_col = col + 1; + | ~~~~^~~ + +(cherry picked from commit e9280a68f7ead83c572bb4c792bc743df9da7149) +--- + src/nvim/drawline.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/nvim/drawline.c b/src/nvim/drawline.c +index 2268a7cd3ec88..40612472bba11 100644 +--- a/src/nvim/drawline.c ++++ b/src/nvim/drawline.c +@@ -282,7 +282,7 @@ static void draw_virt_text(win_T *wp, buf_T *buf, int col_off, int *end_col, int + if (item->win_col < 0) { + continue; + } +- int col; ++ int col = 0; + if (item->decor.ui_watched) { + // send mark position to UI + col = item->win_col; + +From 6bd73ed2d9e5c03b9054aadfe765a6cc341f3eb5 Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Fri, 21 Apr 2023 11:00:46 +0200 +Subject: [PATCH 3/8] fix(drawline): initialize variable +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +src/nvim/drawline.c: In function ‘win_line’: +src/nvim/drawline.c:1418:16: warning: ‘charsize’ may be used uninitialized [-Wmaybe-uninitialized] + 1418 | wlv.vcol -= charsize; + | ^~ + +(cherry picked from commit 2819718873a38c68cca0295f59186444d8534e06) +--- + src/nvim/drawline.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/nvim/drawline.c b/src/nvim/drawline.c +index 40612472bba11..69b3eef5e753a 100644 +--- a/src/nvim/drawline.c ++++ b/src/nvim/drawline.c +@@ -1386,7 +1386,7 @@ int win_line(win_T *wp, linenr_T lnum, int startrow, int endrow, bool nochange, + if (v > 0 && !number_only) { + char *prev_ptr = ptr; + chartabsize_T cts; +- int charsize; ++ int charsize = 0; + + init_chartabsize_arg(&cts, wp, lnum, wlv.vcol, line, ptr); + while (cts.cts_vcol < v && *cts.cts_ptr != NUL) { + +From 6ba14ff18265ff2b112b6571763b330ed5ef2e30 Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Fri, 21 Apr 2023 11:07:56 +0200 +Subject: [PATCH 4/8] fix(userfunc): fix possible out of bound access +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +In file included from /usr/include/string.h:535, + from gsrc/nvim/eval/userfunc.c:11: +In function ‘strcpy’, + inlined from ‘cat_func_name’ at gsrc/nvim/eval/userfunc.c:662:5, + inlined from ‘get_user_func_name’ at gsrc/nvim/eval/userfunc.c:2854:5: +/usr/include/bits/string_fortified.h:79:10: warning: ‘__builtin___strcpy_chk’ offset 0 from the object at ‘’ is out of the bounds of referenced subobject ‘uf_name’ with ty +pe ‘char[]’ at offset 0 [-Warray-bounds=] + 79 | return __builtin___strcpy_chk (__dest, __src, __glibc_objsize (__dest)); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from gsrc/nvim/eval/typval.h:10, + from gsrc/nvim/buffer_defs.h:20, + from gsrc/nvim/autocmd.h:8, + from gsrc/nvim/eval/userfunc.c:15: +gsrc/nvim/eval/typval_defs.h: In function ‘get_user_func_name’: +gsrc/nvim/eval/typval_defs.h:342:8: note: subobject ‘uf_name’ declared here + 342 | char uf_name[]; ///< Name of function (actual size equals name); + | ^~~~~~~ + +(cherry picked from commit 9802de933484cc0a69ee328f3e4e6efbb83c308e) +--- + src/nvim/eval/userfunc.c | 18 ++++++++++++------ + 1 file changed, 12 insertions(+), 6 deletions(-) + +diff --git a/src/nvim/eval/userfunc.c b/src/nvim/eval/userfunc.c +index f09da6b79bab4..63e51dea28f76 100644 +--- a/src/nvim/eval/userfunc.c ++++ b/src/nvim/eval/userfunc.c +@@ -594,14 +594,20 @@ ufunc_T *find_func(const char *name) + /// Copy the function name of "fp" to buffer "buf". + /// "buf" must be able to hold the function name plus three bytes. + /// Takes care of script-local function names. +-static void cat_func_name(char *buf, ufunc_T *fp) ++static void cat_func_name(char *buf, size_t buflen, ufunc_T *fp) + { +- if ((uint8_t)fp->uf_name[0] == K_SPECIAL) { +- STRCPY(buf, ""); +- STRCAT(buf, fp->uf_name + 3); ++ int len = -1; ++ size_t uflen = strlen(fp->uf_name); ++ assert(uflen > 0); ++ ++ if ((uint8_t)fp->uf_name[0] == K_SPECIAL && uflen > 3) { ++ len = snprintf(buf, buflen, "%s", fp->uf_name + 3); + } else { +- STRCPY(buf, fp->uf_name); ++ len = snprintf(buf, buflen, "%s", fp->uf_name); + } ++ ++ (void)len; // Avoid unused warning on release builds ++ assert(len > 0); + } + + /// Add a number variable "name" to dict "dp" with value "nr". +@@ -2746,7 +2752,7 @@ char *get_user_func_name(expand_T *xp, int idx) + return fp->uf_name; // Prevent overflow. + } + +- cat_func_name(IObuff, fp); ++ cat_func_name(IObuff, IOSIZE, fp); + if (xp->xp_context != EXPAND_USER_FUNC) { + STRCAT(IObuff, "("); + if (!fp->uf_varargs && GA_EMPTY(&fp->uf_args)) { + +From 6b32fe96b020c727141d279d976fcebb3b3939dc Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Fri, 21 Apr 2023 11:13:23 +0200 +Subject: [PATCH 5/8] fix(ex_getln): initialize pointer with NULL +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +In function ‘cmdpreview_open_win’, + inlined from ‘cmdpreview_may_show’ at gsrc/nvim/ex_getln.c:2487:28: +gsrc/nvim/ex_getln.c:2251:16: warning: ‘cmdpreview_buf’ may be used uninitialized [-Wmaybe-uninitialized] + 2251 | int result = do_buffer(DOBUF_GOTO, DOBUF_FIRST, FORWARD, cmdpreview_buf->handle, 0); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +(cherry picked from commit a114a21eff58492046645b052fa3f703cddc9ce8) +--- + src/nvim/ex_getln.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/nvim/ex_getln.c b/src/nvim/ex_getln.c +index 97343e468b653..a8ac6ab439850 100644 +--- a/src/nvim/ex_getln.c ++++ b/src/nvim/ex_getln.c +@@ -2446,7 +2446,7 @@ static bool cmdpreview_may_show(CommandLineState *s) + + CpInfo cpinfo; + bool icm_split = *p_icm == 's'; // inccommand=split +- buf_T *cmdpreview_buf; ++ buf_T *cmdpreview_buf = NULL; + win_T *cmdpreview_win = NULL; + + emsg_silent++; // Block error reporting as the command may be incomplete, + +From a77a8a993473174bd8e469b249cf72ac9854544d Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Fri, 21 Apr 2023 11:15:20 +0200 +Subject: [PATCH 6/8] fix(linematch): initialize array +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +gsrc/nvim/linematch.c: In function ‘try_possible_paths’: +gsrc/nvim/linematch.c:204:35: warning: ‘from_vals’ may be used uninitialized [-Wmaybe-uninitialized] + 204 | size_t unwrapped_idx_from = unwrap_indexes(from_vals, diff_len, ndiffs); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +(cherry picked from commit f5530bf566f6617565b5c1f5d1a9acc964199c93) +--- + src/nvim/linematch.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/nvim/linematch.c b/src/nvim/linematch.c +index a15f41d9a8111..7bde6bb121734 100644 +--- a/src/nvim/linematch.c ++++ b/src/nvim/linematch.c +@@ -186,7 +186,7 @@ static void try_possible_paths(const int *df_iters, const size_t *paths, const i + { + if (path_idx == npaths) { + if ((*choice) > 0) { +- int from_vals[LN_MAX_BUFS]; ++ int from_vals[LN_MAX_BUFS] = { 0 }; + const int *to_vals = df_iters; + const char *current_lines[LN_MAX_BUFS]; + for (size_t k = 0; k < ndiffs; k++) { + +From a99d5d17d50e39bc212f2a7bc745d666e690044e Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Fri, 21 Apr 2023 11:22:14 +0200 +Subject: [PATCH 7/8] fix(statusline): fix uninitialized variable and possible + overflow +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +In file included from /usr/include/string.h:535, + from gsrc/nvim/statusline.c:10: +In function ‘strcat’, + inlined from ‘build_stl_str_hl’ at gsrc/nvim/statusline.c:1688:9: +/usr/include/bits/string_fortified.h:130:10: warning: ‘p’ may be used uninitialized [-Wmaybe-uninitialized] + 130 | return __builtin___strcat_chk (__dest, __src, __glibc_objsize (__dest)); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +(cherry picked from commit 54f5602038975b28570f4ab183b3388842347f57) +--- + src/nvim/statusline.c | 9 ++++++--- + 1 file changed, 6 insertions(+), 3 deletions(-) + +diff --git a/src/nvim/statusline.c b/src/nvim/statusline.c +index d0b1727d545d4..d4595d21fe1ca 100644 +--- a/src/nvim/statusline.c ++++ b/src/nvim/statusline.c +@@ -1653,7 +1653,7 @@ int build_stl_str_hl(win_T *wp, char *out, size_t outlen, char *fmt, char *opt_n + break; + } + +- char *p; ++ char *p = NULL; + if (fold) { + size_t n = fill_foldcolumn(out_p, wp, stcp->foldinfo, (linenr_T)get_vim_var_nr(VV_LNUM)); + stl_items[curitem].minwid = -((stcp->use_cul ? HLF_CLF : HLF_FC) + 1); +@@ -1675,14 +1675,17 @@ int build_stl_str_hl(win_T *wp, char *out, size_t outlen, char *fmt, char *opt_n + stl_items[curitem].minwid = -(sattr ? stcp->sign_cul_id ? stcp->sign_cul_id + : sattr->hl_id : (stcp->use_cul ? HLF_CLS : HLF_SC) + 1); + } ++ size_t buflen = strlen(buf_tmp); + stl_items[curitem].type = Highlight; +- stl_items[curitem].start = out_p + strlen(buf_tmp); ++ stl_items[curitem].start = out_p + buflen; + curitem++; + if (i == width) { + str = buf_tmp; + break; + } +- STRCAT(buf_tmp, p); ++ int rc = snprintf(buf_tmp + buflen, sizeof(buf_tmp) - buflen, "%s", p); ++ (void)rc; // Avoid unused warning on release build ++ assert(rc > 0); + } + break; + } + +From c0845343b68bc7b58e8241cb012c78d41d8a33d8 Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Fri, 21 Apr 2023 11:30:31 +0200 +Subject: [PATCH 8/8] fix(ui_client): check return code of dup() +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +gsrc/nvim/ui_client.c: In function ‘ui_client_start_server’: +gsrc/nvim/ui_client.c:68:5: warning: ignoring return value of ‘dup’ declared with attribute ‘warn_unused_result’ [-Wunused-result] + 68 | dup(stderr_isatty ? STDERR_FILENO : STDOUT_FILENO); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +(cherry picked from commit 4d654472e65ed28b7cd9e66c91d98b9991452266) +--- + src/nvim/ui_client.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/src/nvim/ui_client.c b/src/nvim/ui_client.c +index b93b31f7dc301..e177c0a60d600 100644 +--- a/src/nvim/ui_client.c ++++ b/src/nvim/ui_client.c +@@ -65,7 +65,11 @@ uint64_t ui_client_start_server(int argc, char **argv) + #ifdef MSWIN + os_open_conin_fd(); + #else +- dup(stderr_isatty ? STDERR_FILENO : STDOUT_FILENO); ++ int fd = dup(stderr_isatty ? STDERR_FILENO : STDOUT_FILENO); ++ if (fd < 0) { ++ return 0; ++ } ++ // FIXME: resource leak of fd + #endif + } + diff --git a/23246.patch b/23246.patch new file mode 100644 index 0000000..0d4150c --- /dev/null +++ b/23246.patch @@ -0,0 +1,150 @@ +From 30cfd28257d06a5766e62662b47e83ee4b508061 Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Fri, 21 Apr 2023 13:16:32 +0200 +Subject: [PATCH] fix(usercmd): fix buffer overflow in uc_list() + +Build with: -Wp,-D_FORTIFY_SOURCE=3 -O1 and gcc 13. + +*** buffer overflow detected ***: terminated + +(gdb) bt + #0 __pthread_kill_implementation (threadid=, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44 + #1 0x00007f3eb8b93c03 in __pthread_kill_internal (signo=6, threadid=) at pthread_kill.c:78 + #2 0x00007f3eb8b42aee in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 + #3 0x00007f3eb8b2b87f in __GI_abort () at abort.c:79 + #4 0x00007f3eb8b2c60f in __libc_message (fmt=fmt@entry=0x7f3eb8ca72e6 "*** %s ***: terminated\n") at ../sysdeps/posix/libc_fatal.c:150 + #5 0x00007f3eb8c27b29 in __GI___fortify_fail (msg=msg@entry=0x7f3eb8ca728c "buffer overflow detected") at fortify_fail.c:24 + #6 0x00007f3eb8c26364 in __GI___chk_fail () at chk_fail.c:28 + #7 0x00007f3eb8c25f45 in ___snprintf_chk (s=s@entry=0x55b8c7c096a5 "t' item", maxlen=maxlen@entry=1025, flag=flag@entry=2, slen=slen@entry=1020, format=format@entry=0x55b8c7b872a6 "%ldc") at snprintf_chk.c:29 + #8 0x000055b8c7aea59f in snprintf (__fmt=0x55b8c7b872a6 "%ldc", __n=1025, __s=0x55b8c7c096a5 "t' item") at /usr/include/bits/stdio2.h:54 + #9 uc_list (name=name@entry=0x55b8c8351788 "Explore", name_len=name_len@entry=7) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/usercmd.c:534 + #10 0x000055b8c7aeb8a0 in ex_command (eap=0x7fffdc350e60) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/usercmd.c:1009 + #11 0x000055b8c7972537 in execute_cmd0 (retv=retv@entry=0x7fffdc350e54, eap=eap@entry=0x7fffdc350e60, errormsg=errormsg@entry=0x7fffdc350e58, preview=preview@entry=false) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/ex_docmd.c:1620 + #12 0x000055b8c7975c55 in do_one_cmd (cmdlinep=cmdlinep@entry=0x7fffdc3510b8, flags=flags@entry=0, cstack=cstack@entry=0x7fffdc351140, fgetline=fgetline@entry=0x55b8c79882b8 , cookie=cookie@entry=0x0) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/ex_docmd.c:2279 + #13 0x000055b8c79767fe in do_cmdline (cmdline=, fgetline=0x55b8c79882b8 , cookie=0x0, flags=0) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/ex_docmd.c:578 + #14 0x000055b8c7a17463 in nv_colon (cap=0x7fffdc351780) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/normal.c:3228 + #15 0x000055b8c7a11b35 in normal_execute (state=0x7fffdc351700, key=) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/normal.c:1196 + #16 0x000055b8c7ab0994 in state_enter (s=0x7fffdc351700) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/state.c:99 + #17 0x000055b8c7a0ef68 in normal_enter (cmdwin=false, noexmode=false) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/normal.c:497 + #18 0x000055b8c78a0640 in main (argc=, argv=) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/main.c:641 +--- + src/nvim/usercmd.c | 34 ++++++++++++++------------ + test/functional/ex_cmds/excmd_spec.lua | 6 ++++- + 2 files changed, 24 insertions(+), 16 deletions(-) + +diff --git a/src/nvim/usercmd.c b/src/nvim/usercmd.c +index 4cd58bb91b4e8..dadb160a19710 100644 +--- a/src/nvim/usercmd.c ++++ b/src/nvim/usercmd.c +@@ -470,7 +470,7 @@ static void uc_list(char *name, size_t name_len) + } + + // Special cases +- int len = 4; ++ size_t len = 4; + if (a & EX_BANG) { + msg_putchar('!'); + len--; +@@ -492,7 +492,7 @@ static void uc_list(char *name, size_t name_len) + } + + msg_outtrans_attr(cmd->uc_name, HL_ATTR(HLF_D)); +- len = (int)strlen(cmd->uc_name) + 4; ++ len = strlen(cmd->uc_name) + 4; + + do { + msg_putchar(' '); +@@ -501,7 +501,7 @@ static void uc_list(char *name, size_t name_len) + + // "over" is how much longer the name is than the column width for + // the name, we'll try to align what comes after. +- const int over = len - 22; ++ const int64_t over = (int64_t)len - 22; + len = 0; + + // Arguments +@@ -525,20 +525,22 @@ static void uc_list(char *name, size_t name_len) + + do { + IObuff[len++] = ' '; +- } while (len < 5 - over); ++ } while ((int64_t)len < 5 - over); + + // Address / Range + if (a & (EX_RANGE | EX_COUNT)) { + if (a & EX_COUNT) { + // -count=N +- snprintf(IObuff + len, IOSIZE, "%" PRId64 "c", cmd->uc_def); +- len += (int)strlen(IObuff + len); ++ int rc = snprintf(IObuff + len, IOSIZE - len, "%" PRId64 "c", cmd->uc_def); ++ assert(rc > 0); ++ len += (size_t)rc; + } else if (a & EX_DFLALL) { + IObuff[len++] = '%'; + } else if (cmd->uc_def >= 0) { + // -range=N +- snprintf(IObuff + len, IOSIZE, "%" PRId64 "", cmd->uc_def); +- len += (int)strlen(IObuff + len); ++ int rc = snprintf(IObuff + len, IOSIZE - len, "%" PRId64 "", cmd->uc_def); ++ assert(rc > 0); ++ len += (size_t)rc; + } else { + IObuff[len++] = '.'; + } +@@ -546,32 +548,34 @@ static void uc_list(char *name, size_t name_len) + + do { + IObuff[len++] = ' '; +- } while (len < 8 - over); ++ } while ((int64_t)len < 8 - over); + + // Address Type + for (j = 0; addr_type_complete[j].expand != ADDR_NONE; j++) { + if (addr_type_complete[j].expand != ADDR_LINES + && addr_type_complete[j].expand == cmd->uc_addr_type) { +- STRCPY(IObuff + len, addr_type_complete[j].shortname); +- len += (int)strlen(IObuff + len); ++ int rc = snprintf(IObuff + len, IOSIZE - len, "%s", addr_type_complete[j].shortname); ++ assert(rc > 0); ++ len += (size_t)rc; + break; + } + } + + do { + IObuff[len++] = ' '; +- } while (len < 13 - over); ++ } while ((int64_t)len < 13 - over); + + // Completion + char *cmd_compl = get_command_complete(cmd->uc_compl); + if (cmd_compl != NULL) { +- STRCPY(IObuff + len, get_command_complete(cmd->uc_compl)); +- len += (int)strlen(IObuff + len); ++ int rc = snprintf(IObuff + len, IOSIZE - len, "%s", get_command_complete(cmd->uc_compl)); ++ assert(rc > 0); ++ len += (size_t)rc; + } + + do { + IObuff[len++] = ' '; +- } while (len < 25 - over); ++ } while ((int64_t)len < 25 - over); + + IObuff[len] = '\0'; + msg_outtrans(IObuff); +diff --git a/test/functional/ex_cmds/excmd_spec.lua b/test/functional/ex_cmds/excmd_spec.lua +index e243f3c524d00..21bcdc079161c 100644 +--- a/test/functional/ex_cmds/excmd_spec.lua ++++ b/test/functional/ex_cmds/excmd_spec.lua +@@ -26,5 +26,9 @@ describe('Ex cmds', function() + pcall_err(command, ':bdelete 9999999999999999999999999999999999999999')) + assert_alive() + end) +-end) + ++ it('listing long user command does not crash', function() ++ command('execute "command" repeat("T", 255) ":"') ++ command('command') ++ end) ++end) diff --git a/neovim.spec b/neovim.spec index 92cef70..ca77400 100644 --- a/neovim.spec +++ b/neovim.spec @@ -40,7 +40,7 @@ Name: neovim Version: 0.9.0 -Release: 1%{?dist} +Release: 2%{?dist} License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility @@ -50,6 +50,9 @@ Source0: https://github.com/neovim/neovim/archive/v%{version}/%{name}-%{v Source1: sysinit.vim Source2: spec-template +Patch0: https://github.com/neovim/neovim/pull/23246.patch +Patch1: https://github.com/neovim/neovim/pull/23245.patch + Patch1000: neovim-lua-bit32.patch BuildRequires: gcc-c++ @@ -86,7 +89,7 @@ BuildRequires: pkgconfig(vterm) >= 0.3 # need the build with the fix for the resize buffer issue Requires: libvterm >= 0.3 BuildRequires: pkgconfig(unibilium) -BuildRequires: pkgconfig(libtree-sitter) >= %{tree_sitter_min_ver} +BuildRequires: pkgconfig(tree-sitter) >= %{tree_sitter_min_ver} # tree-sitter didn't do an soname bump. enforce the min version # see https://github.com/nvim-treesitter/nvim-treesitter/pull/3055/files Requires: libtree-sitter >= %{tree_sitter_min_ver} @@ -1953,6 +1956,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Fri Apr 21 2023 Andreas Schneider - 0.9.0-2 +- resolves: rhbz#2188229 - Fix buffer overflow for user command + * Fri Apr 07 2023 Andreas Schneider - 0.9.0-1 - Update to version 0.9.0 * For changelog see `:help news` From 02d5fee97b2016d803e0419dc04ef5d1086f2f10 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Tue, 2 May 2023 08:08:09 +0200 Subject: [PATCH 10/60] Improve semantic token performance and fix applying patches related: rhbz#2188229 --- 23375.patch | 108 ++++++++++++++++++++++++++++++++++++++++++++++++++++ neovim.spec | 10 ++++- 2 files changed, 117 insertions(+), 1 deletion(-) create mode 100644 23375.patch diff --git a/23375.patch b/23375.patch new file mode 100644 index 0000000..6db2251 --- /dev/null +++ b/23375.patch @@ -0,0 +1,108 @@ +From 46cd1d957c88ea229b50ccafa63878e14c4d57c9 Mon Sep 17 00:00:00 2001 +From: John Drouhard +Date: Fri, 28 Apr 2023 08:20:38 -0500 +Subject: [PATCH] perf(lsp): process semantic tokens response in a coroutine + that yields every 5ms + +--- + runtime/lua/vim/lsp/semantic_tokens.lua | 45 ++++++++++++++++++++----- + 1 file changed, 37 insertions(+), 8 deletions(-) + +diff --git a/runtime/lua/vim/lsp/semantic_tokens.lua b/runtime/lua/vim/lsp/semantic_tokens.lua +index 03532c33b7547..b6b09c58b1e60 100644 +--- a/runtime/lua/vim/lsp/semantic_tokens.lua ++++ b/runtime/lua/vim/lsp/semantic_tokens.lua +@@ -1,7 +1,8 @@ + local api = vim.api ++local bit = require('bit') + local handlers = require('vim.lsp.handlers') + local util = require('vim.lsp.util') +-local bit = require('bit') ++local uv = vim.loop + + --- @class STTokenRange + --- @field line integer line number 0-based +@@ -94,15 +95,38 @@ end + --- + ---@private + ---@return STTokenRange[] +-local function tokens_to_ranges(data, bufnr, client) ++local function tokens_to_ranges(data, bufnr, client, request) + local legend = client.server_capabilities.semanticTokensProvider.legend + local token_types = legend.tokenTypes + local token_modifiers = legend.tokenModifiers + local ranges = {} + ++ local start = uv.hrtime() ++ local ms_to_ns = 1000 * 1000 ++ local yield_interval_ns = 5 * ms_to_ns ++ local co, is_main = coroutine.running() ++ + local line + local start_char = 0 + for i = 1, #data, 5 do ++ -- if this function is called from the main coroutine, let it run to completion with no yield ++ if not is_main then ++ local elapsed_ns = uv.hrtime() - start ++ ++ if elapsed_ns > yield_interval_ns then ++ vim.schedule(function() ++ coroutine.resume(co, util.buf_versions[bufnr]) ++ end) ++ if request.version ~= coroutine.yield() then ++ -- request became stale since the last time the coroutine ran. ++ -- abandon it by yielding without a way to resume ++ coroutine.yield() ++ end ++ ++ start = uv.hrtime() ++ end ++ end ++ + local delta_line = data[i] + line = line and line + delta_line or delta_line + local delta_start = data[i + 1] +@@ -280,7 +304,7 @@ function STHighlighter:send_request() + local c = vim.lsp.get_client_by_id(ctx.client_id) + local highlighter = STHighlighter.active[ctx.bufnr] + if not err and c and highlighter then +- highlighter:process_response(response, c, version) ++ coroutine.wrap(STHighlighter.process_response)(highlighter, response, c, version) + end + end, self.bufnr) + +@@ -315,11 +339,9 @@ function STHighlighter:process_response(response, client, version) + return + end + +- -- reset active request +- state.active_request = {} +- + -- skip nil responses + if response == nil then ++ state.active_request = {} + return + end + +@@ -347,12 +369,19 @@ function STHighlighter:process_response(response, client, version) + tokens = response.data + end + +- -- Update the state with the new results ++ -- convert token list to highlight ranges ++ -- this could yield and run over multiple event loop iterations ++ local highlights = tokens_to_ranges(tokens, self.bufnr, client, state.active_request) ++ ++ -- reset active request ++ state.active_request = {} ++ ++ -- update the state with the new results + local current_result = state.current_result + current_result.version = version + current_result.result_id = response.resultId + current_result.tokens = tokens +- current_result.highlights = tokens_to_ranges(tokens, self.bufnr, client) ++ current_result.highlights = highlights + current_result.namespace_cleared = false + + -- redraw all windows displaying buffer diff --git a/neovim.spec b/neovim.spec index ca77400..45b174a 100644 --- a/neovim.spec +++ b/neovim.spec @@ -40,7 +40,7 @@ Name: neovim Version: 0.9.0 -Release: 2%{?dist} +Release: 3%{?dist} License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility @@ -52,6 +52,7 @@ Source2: spec-template Patch0: https://github.com/neovim/neovim/pull/23246.patch Patch1: https://github.com/neovim/neovim/pull/23245.patch +Patch2: https://github.com/neovim/neovim/pull/23375.patch Patch1000: neovim-lua-bit32.patch @@ -113,6 +114,9 @@ parts of Vim, without compromise, and more. %prep %setup -q +%patch -P 0 -p1 +%patch -P 1 -p1 +%patch -P 2 -p1 %if %{without luajit} %patch -P 1000 -p1 @@ -1956,6 +1960,10 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Tue May 02 2023 Andreas Schneider - 0.9.0-3 +- Improve semantic token performance +- related: rhbz#2188229 - Fix applying patches + * Fri Apr 21 2023 Andreas Schneider - 0.9.0-2 - resolves: rhbz#2188229 - Fix buffer overflow for user command From 99388db703029494e3600e3b4bd6f825937a8f91 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Wed, 31 May 2023 09:51:11 +0200 Subject: [PATCH 11/60] Update to version 0.9.1 --- .gitignore | 1 + 23245.patch | 338 ---------------------------------------------------- 23246.patch | 150 ----------------------- 23375.patch | 108 ----------------- neovim.spec | 16 ++- sources | 2 +- 6 files changed, 9 insertions(+), 606 deletions(-) delete mode 100644 23245.patch delete mode 100644 23246.patch delete mode 100644 23375.patch diff --git a/.gitignore b/.gitignore index c273174..71033ba 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,4 @@ /neovim-0.8.2.tar.gz /neovim-0.8.3.tar.gz /neovim-0.9.0.tar.gz +/neovim-0.9.1.tar.gz diff --git a/23245.patch b/23245.patch deleted file mode 100644 index 5fc5c0c..0000000 --- a/23245.patch +++ /dev/null @@ -1,338 +0,0 @@ -From b2a43b5287976f0bdbc43690038d9ae37610ff00 Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Fri, 21 Apr 2023 10:55:36 +0200 -Subject: [PATCH 1/8] fix(api): avoid integer truncation -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -gsrc/nvim/api/vim.c: In function ‘nvim_eval_statusline’: -gsrc/nvim/api/vim.c:2268:55: warning: ‘%d’ directive output may be truncated writing between 1 and 10 bytes into a region of size 2 [-Wformat-tru -ncation=] - 2268 | snprintf(user_group, sizeof(user_group), "User%d", sp->userhl); - | ^~ -gsrc/nvim/api/vim.c:2268:50: note: directive argument in the range [1, 2147483647] - 2268 | snprintf(user_group, sizeof(user_group), "User%d", sp->userhl); - | ^~~~~~~~ -In file included from /usr/include/stdio.h:906, - from gsrc/nvim/api/vim.c:9: -In function ‘snprintf’, - inlined from ‘nvim_eval_statusline’ at gsrc/nvim/api/vim.c:2268:9: -/usr/include/bits/stdio2.h:54:10: note: ‘__builtin___snprintf_chk’ output between 6 and 15 bytes into a destination of size 6 - 54 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1, - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 55 | __glibc_objsize (__s), __fmt, - | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 56 | __va_arg_pack ()); - | ~~~~~~~~~~~~~~~~~ - -(cherry picked from commit ef7ae66eef4e36e15b5248b926b4b020387d8101) ---- - src/nvim/api/vim.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/nvim/api/vim.c b/src/nvim/api/vim.c -index c8bb22b33c0c1..d47f47e63863b 100644 ---- a/src/nvim/api/vim.c -+++ b/src/nvim/api/vim.c -@@ -2241,7 +2241,7 @@ Dictionary nvim_eval_statusline(String str, Dict(eval_statusline) *opts, Error * - if (highlights) { - Array hl_values = ARRAY_DICT_INIT; - const char *grpname; -- char user_group[6]; -+ char user_group[15]; // strlen("User") + strlen("2147483647") + NUL - - // If first character doesn't have a defined highlight, - // add the default highlight at the beginning of the highlight list - -From b91278c4fa8f7bb319213e9cc47951795b9fda92 Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Fri, 21 Apr 2023 10:58:46 +0200 -Subject: [PATCH 2/8] fix(drawline): initialize variable -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -src/nvim/drawline.c: In function ‘draw_virt_text’: -src/nvim/drawline.c:298:28: warning: ‘col’ may be used uninitialized [-Wmaybe-uninitialized] - 298 | state->eol_col = col + 1; - | ~~~~^~~ - -(cherry picked from commit e9280a68f7ead83c572bb4c792bc743df9da7149) ---- - src/nvim/drawline.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/nvim/drawline.c b/src/nvim/drawline.c -index 2268a7cd3ec88..40612472bba11 100644 ---- a/src/nvim/drawline.c -+++ b/src/nvim/drawline.c -@@ -282,7 +282,7 @@ static void draw_virt_text(win_T *wp, buf_T *buf, int col_off, int *end_col, int - if (item->win_col < 0) { - continue; - } -- int col; -+ int col = 0; - if (item->decor.ui_watched) { - // send mark position to UI - col = item->win_col; - -From 6bd73ed2d9e5c03b9054aadfe765a6cc341f3eb5 Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Fri, 21 Apr 2023 11:00:46 +0200 -Subject: [PATCH 3/8] fix(drawline): initialize variable -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -src/nvim/drawline.c: In function ‘win_line’: -src/nvim/drawline.c:1418:16: warning: ‘charsize’ may be used uninitialized [-Wmaybe-uninitialized] - 1418 | wlv.vcol -= charsize; - | ^~ - -(cherry picked from commit 2819718873a38c68cca0295f59186444d8534e06) ---- - src/nvim/drawline.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/nvim/drawline.c b/src/nvim/drawline.c -index 40612472bba11..69b3eef5e753a 100644 ---- a/src/nvim/drawline.c -+++ b/src/nvim/drawline.c -@@ -1386,7 +1386,7 @@ int win_line(win_T *wp, linenr_T lnum, int startrow, int endrow, bool nochange, - if (v > 0 && !number_only) { - char *prev_ptr = ptr; - chartabsize_T cts; -- int charsize; -+ int charsize = 0; - - init_chartabsize_arg(&cts, wp, lnum, wlv.vcol, line, ptr); - while (cts.cts_vcol < v && *cts.cts_ptr != NUL) { - -From 6ba14ff18265ff2b112b6571763b330ed5ef2e30 Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Fri, 21 Apr 2023 11:07:56 +0200 -Subject: [PATCH 4/8] fix(userfunc): fix possible out of bound access -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -In file included from /usr/include/string.h:535, - from gsrc/nvim/eval/userfunc.c:11: -In function ‘strcpy’, - inlined from ‘cat_func_name’ at gsrc/nvim/eval/userfunc.c:662:5, - inlined from ‘get_user_func_name’ at gsrc/nvim/eval/userfunc.c:2854:5: -/usr/include/bits/string_fortified.h:79:10: warning: ‘__builtin___strcpy_chk’ offset 0 from the object at ‘’ is out of the bounds of referenced subobject ‘uf_name’ with ty -pe ‘char[]’ at offset 0 [-Warray-bounds=] - 79 | return __builtin___strcpy_chk (__dest, __src, __glibc_objsize (__dest)); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -In file included from gsrc/nvim/eval/typval.h:10, - from gsrc/nvim/buffer_defs.h:20, - from gsrc/nvim/autocmd.h:8, - from gsrc/nvim/eval/userfunc.c:15: -gsrc/nvim/eval/typval_defs.h: In function ‘get_user_func_name’: -gsrc/nvim/eval/typval_defs.h:342:8: note: subobject ‘uf_name’ declared here - 342 | char uf_name[]; ///< Name of function (actual size equals name); - | ^~~~~~~ - -(cherry picked from commit 9802de933484cc0a69ee328f3e4e6efbb83c308e) ---- - src/nvim/eval/userfunc.c | 18 ++++++++++++------ - 1 file changed, 12 insertions(+), 6 deletions(-) - -diff --git a/src/nvim/eval/userfunc.c b/src/nvim/eval/userfunc.c -index f09da6b79bab4..63e51dea28f76 100644 ---- a/src/nvim/eval/userfunc.c -+++ b/src/nvim/eval/userfunc.c -@@ -594,14 +594,20 @@ ufunc_T *find_func(const char *name) - /// Copy the function name of "fp" to buffer "buf". - /// "buf" must be able to hold the function name plus three bytes. - /// Takes care of script-local function names. --static void cat_func_name(char *buf, ufunc_T *fp) -+static void cat_func_name(char *buf, size_t buflen, ufunc_T *fp) - { -- if ((uint8_t)fp->uf_name[0] == K_SPECIAL) { -- STRCPY(buf, ""); -- STRCAT(buf, fp->uf_name + 3); -+ int len = -1; -+ size_t uflen = strlen(fp->uf_name); -+ assert(uflen > 0); -+ -+ if ((uint8_t)fp->uf_name[0] == K_SPECIAL && uflen > 3) { -+ len = snprintf(buf, buflen, "%s", fp->uf_name + 3); - } else { -- STRCPY(buf, fp->uf_name); -+ len = snprintf(buf, buflen, "%s", fp->uf_name); - } -+ -+ (void)len; // Avoid unused warning on release builds -+ assert(len > 0); - } - - /// Add a number variable "name" to dict "dp" with value "nr". -@@ -2746,7 +2752,7 @@ char *get_user_func_name(expand_T *xp, int idx) - return fp->uf_name; // Prevent overflow. - } - -- cat_func_name(IObuff, fp); -+ cat_func_name(IObuff, IOSIZE, fp); - if (xp->xp_context != EXPAND_USER_FUNC) { - STRCAT(IObuff, "("); - if (!fp->uf_varargs && GA_EMPTY(&fp->uf_args)) { - -From 6b32fe96b020c727141d279d976fcebb3b3939dc Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Fri, 21 Apr 2023 11:13:23 +0200 -Subject: [PATCH 5/8] fix(ex_getln): initialize pointer with NULL -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -In function ‘cmdpreview_open_win’, - inlined from ‘cmdpreview_may_show’ at gsrc/nvim/ex_getln.c:2487:28: -gsrc/nvim/ex_getln.c:2251:16: warning: ‘cmdpreview_buf’ may be used uninitialized [-Wmaybe-uninitialized] - 2251 | int result = do_buffer(DOBUF_GOTO, DOBUF_FIRST, FORWARD, cmdpreview_buf->handle, 0); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -(cherry picked from commit a114a21eff58492046645b052fa3f703cddc9ce8) ---- - src/nvim/ex_getln.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/nvim/ex_getln.c b/src/nvim/ex_getln.c -index 97343e468b653..a8ac6ab439850 100644 ---- a/src/nvim/ex_getln.c -+++ b/src/nvim/ex_getln.c -@@ -2446,7 +2446,7 @@ static bool cmdpreview_may_show(CommandLineState *s) - - CpInfo cpinfo; - bool icm_split = *p_icm == 's'; // inccommand=split -- buf_T *cmdpreview_buf; -+ buf_T *cmdpreview_buf = NULL; - win_T *cmdpreview_win = NULL; - - emsg_silent++; // Block error reporting as the command may be incomplete, - -From a77a8a993473174bd8e469b249cf72ac9854544d Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Fri, 21 Apr 2023 11:15:20 +0200 -Subject: [PATCH 6/8] fix(linematch): initialize array -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -gsrc/nvim/linematch.c: In function ‘try_possible_paths’: -gsrc/nvim/linematch.c:204:35: warning: ‘from_vals’ may be used uninitialized [-Wmaybe-uninitialized] - 204 | size_t unwrapped_idx_from = unwrap_indexes(from_vals, diff_len, ndiffs); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -(cherry picked from commit f5530bf566f6617565b5c1f5d1a9acc964199c93) ---- - src/nvim/linematch.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/nvim/linematch.c b/src/nvim/linematch.c -index a15f41d9a8111..7bde6bb121734 100644 ---- a/src/nvim/linematch.c -+++ b/src/nvim/linematch.c -@@ -186,7 +186,7 @@ static void try_possible_paths(const int *df_iters, const size_t *paths, const i - { - if (path_idx == npaths) { - if ((*choice) > 0) { -- int from_vals[LN_MAX_BUFS]; -+ int from_vals[LN_MAX_BUFS] = { 0 }; - const int *to_vals = df_iters; - const char *current_lines[LN_MAX_BUFS]; - for (size_t k = 0; k < ndiffs; k++) { - -From a99d5d17d50e39bc212f2a7bc745d666e690044e Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Fri, 21 Apr 2023 11:22:14 +0200 -Subject: [PATCH 7/8] fix(statusline): fix uninitialized variable and possible - overflow -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -In file included from /usr/include/string.h:535, - from gsrc/nvim/statusline.c:10: -In function ‘strcat’, - inlined from ‘build_stl_str_hl’ at gsrc/nvim/statusline.c:1688:9: -/usr/include/bits/string_fortified.h:130:10: warning: ‘p’ may be used uninitialized [-Wmaybe-uninitialized] - 130 | return __builtin___strcat_chk (__dest, __src, __glibc_objsize (__dest)); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -(cherry picked from commit 54f5602038975b28570f4ab183b3388842347f57) ---- - src/nvim/statusline.c | 9 ++++++--- - 1 file changed, 6 insertions(+), 3 deletions(-) - -diff --git a/src/nvim/statusline.c b/src/nvim/statusline.c -index d0b1727d545d4..d4595d21fe1ca 100644 ---- a/src/nvim/statusline.c -+++ b/src/nvim/statusline.c -@@ -1653,7 +1653,7 @@ int build_stl_str_hl(win_T *wp, char *out, size_t outlen, char *fmt, char *opt_n - break; - } - -- char *p; -+ char *p = NULL; - if (fold) { - size_t n = fill_foldcolumn(out_p, wp, stcp->foldinfo, (linenr_T)get_vim_var_nr(VV_LNUM)); - stl_items[curitem].minwid = -((stcp->use_cul ? HLF_CLF : HLF_FC) + 1); -@@ -1675,14 +1675,17 @@ int build_stl_str_hl(win_T *wp, char *out, size_t outlen, char *fmt, char *opt_n - stl_items[curitem].minwid = -(sattr ? stcp->sign_cul_id ? stcp->sign_cul_id - : sattr->hl_id : (stcp->use_cul ? HLF_CLS : HLF_SC) + 1); - } -+ size_t buflen = strlen(buf_tmp); - stl_items[curitem].type = Highlight; -- stl_items[curitem].start = out_p + strlen(buf_tmp); -+ stl_items[curitem].start = out_p + buflen; - curitem++; - if (i == width) { - str = buf_tmp; - break; - } -- STRCAT(buf_tmp, p); -+ int rc = snprintf(buf_tmp + buflen, sizeof(buf_tmp) - buflen, "%s", p); -+ (void)rc; // Avoid unused warning on release build -+ assert(rc > 0); - } - break; - } - -From c0845343b68bc7b58e8241cb012c78d41d8a33d8 Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Fri, 21 Apr 2023 11:30:31 +0200 -Subject: [PATCH 8/8] fix(ui_client): check return code of dup() -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -gsrc/nvim/ui_client.c: In function ‘ui_client_start_server’: -gsrc/nvim/ui_client.c:68:5: warning: ignoring return value of ‘dup’ declared with attribute ‘warn_unused_result’ [-Wunused-result] - 68 | dup(stderr_isatty ? STDERR_FILENO : STDOUT_FILENO); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -(cherry picked from commit 4d654472e65ed28b7cd9e66c91d98b9991452266) ---- - src/nvim/ui_client.c | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/src/nvim/ui_client.c b/src/nvim/ui_client.c -index b93b31f7dc301..e177c0a60d600 100644 ---- a/src/nvim/ui_client.c -+++ b/src/nvim/ui_client.c -@@ -65,7 +65,11 @@ uint64_t ui_client_start_server(int argc, char **argv) - #ifdef MSWIN - os_open_conin_fd(); - #else -- dup(stderr_isatty ? STDERR_FILENO : STDOUT_FILENO); -+ int fd = dup(stderr_isatty ? STDERR_FILENO : STDOUT_FILENO); -+ if (fd < 0) { -+ return 0; -+ } -+ // FIXME: resource leak of fd - #endif - } - diff --git a/23246.patch b/23246.patch deleted file mode 100644 index 0d4150c..0000000 --- a/23246.patch +++ /dev/null @@ -1,150 +0,0 @@ -From 30cfd28257d06a5766e62662b47e83ee4b508061 Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Fri, 21 Apr 2023 13:16:32 +0200 -Subject: [PATCH] fix(usercmd): fix buffer overflow in uc_list() - -Build with: -Wp,-D_FORTIFY_SOURCE=3 -O1 and gcc 13. - -*** buffer overflow detected ***: terminated - -(gdb) bt - #0 __pthread_kill_implementation (threadid=, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44 - #1 0x00007f3eb8b93c03 in __pthread_kill_internal (signo=6, threadid=) at pthread_kill.c:78 - #2 0x00007f3eb8b42aee in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 - #3 0x00007f3eb8b2b87f in __GI_abort () at abort.c:79 - #4 0x00007f3eb8b2c60f in __libc_message (fmt=fmt@entry=0x7f3eb8ca72e6 "*** %s ***: terminated\n") at ../sysdeps/posix/libc_fatal.c:150 - #5 0x00007f3eb8c27b29 in __GI___fortify_fail (msg=msg@entry=0x7f3eb8ca728c "buffer overflow detected") at fortify_fail.c:24 - #6 0x00007f3eb8c26364 in __GI___chk_fail () at chk_fail.c:28 - #7 0x00007f3eb8c25f45 in ___snprintf_chk (s=s@entry=0x55b8c7c096a5 "t' item", maxlen=maxlen@entry=1025, flag=flag@entry=2, slen=slen@entry=1020, format=format@entry=0x55b8c7b872a6 "%ldc") at snprintf_chk.c:29 - #8 0x000055b8c7aea59f in snprintf (__fmt=0x55b8c7b872a6 "%ldc", __n=1025, __s=0x55b8c7c096a5 "t' item") at /usr/include/bits/stdio2.h:54 - #9 uc_list (name=name@entry=0x55b8c8351788 "Explore", name_len=name_len@entry=7) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/usercmd.c:534 - #10 0x000055b8c7aeb8a0 in ex_command (eap=0x7fffdc350e60) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/usercmd.c:1009 - #11 0x000055b8c7972537 in execute_cmd0 (retv=retv@entry=0x7fffdc350e54, eap=eap@entry=0x7fffdc350e60, errormsg=errormsg@entry=0x7fffdc350e58, preview=preview@entry=false) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/ex_docmd.c:1620 - #12 0x000055b8c7975c55 in do_one_cmd (cmdlinep=cmdlinep@entry=0x7fffdc3510b8, flags=flags@entry=0, cstack=cstack@entry=0x7fffdc351140, fgetline=fgetline@entry=0x55b8c79882b8 , cookie=cookie@entry=0x0) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/ex_docmd.c:2279 - #13 0x000055b8c79767fe in do_cmdline (cmdline=, fgetline=0x55b8c79882b8 , cookie=0x0, flags=0) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/ex_docmd.c:578 - #14 0x000055b8c7a17463 in nv_colon (cap=0x7fffdc351780) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/normal.c:3228 - #15 0x000055b8c7a11b35 in normal_execute (state=0x7fffdc351700, key=) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/normal.c:1196 - #16 0x000055b8c7ab0994 in state_enter (s=0x7fffdc351700) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/state.c:99 - #17 0x000055b8c7a0ef68 in normal_enter (cmdwin=false, noexmode=false) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/normal.c:497 - #18 0x000055b8c78a0640 in main (argc=, argv=) at /usr/src/debug/neovim-0.9.0-1.fc38.x86_64/src/nvim/main.c:641 ---- - src/nvim/usercmd.c | 34 ++++++++++++++------------ - test/functional/ex_cmds/excmd_spec.lua | 6 ++++- - 2 files changed, 24 insertions(+), 16 deletions(-) - -diff --git a/src/nvim/usercmd.c b/src/nvim/usercmd.c -index 4cd58bb91b4e8..dadb160a19710 100644 ---- a/src/nvim/usercmd.c -+++ b/src/nvim/usercmd.c -@@ -470,7 +470,7 @@ static void uc_list(char *name, size_t name_len) - } - - // Special cases -- int len = 4; -+ size_t len = 4; - if (a & EX_BANG) { - msg_putchar('!'); - len--; -@@ -492,7 +492,7 @@ static void uc_list(char *name, size_t name_len) - } - - msg_outtrans_attr(cmd->uc_name, HL_ATTR(HLF_D)); -- len = (int)strlen(cmd->uc_name) + 4; -+ len = strlen(cmd->uc_name) + 4; - - do { - msg_putchar(' '); -@@ -501,7 +501,7 @@ static void uc_list(char *name, size_t name_len) - - // "over" is how much longer the name is than the column width for - // the name, we'll try to align what comes after. -- const int over = len - 22; -+ const int64_t over = (int64_t)len - 22; - len = 0; - - // Arguments -@@ -525,20 +525,22 @@ static void uc_list(char *name, size_t name_len) - - do { - IObuff[len++] = ' '; -- } while (len < 5 - over); -+ } while ((int64_t)len < 5 - over); - - // Address / Range - if (a & (EX_RANGE | EX_COUNT)) { - if (a & EX_COUNT) { - // -count=N -- snprintf(IObuff + len, IOSIZE, "%" PRId64 "c", cmd->uc_def); -- len += (int)strlen(IObuff + len); -+ int rc = snprintf(IObuff + len, IOSIZE - len, "%" PRId64 "c", cmd->uc_def); -+ assert(rc > 0); -+ len += (size_t)rc; - } else if (a & EX_DFLALL) { - IObuff[len++] = '%'; - } else if (cmd->uc_def >= 0) { - // -range=N -- snprintf(IObuff + len, IOSIZE, "%" PRId64 "", cmd->uc_def); -- len += (int)strlen(IObuff + len); -+ int rc = snprintf(IObuff + len, IOSIZE - len, "%" PRId64 "", cmd->uc_def); -+ assert(rc > 0); -+ len += (size_t)rc; - } else { - IObuff[len++] = '.'; - } -@@ -546,32 +548,34 @@ static void uc_list(char *name, size_t name_len) - - do { - IObuff[len++] = ' '; -- } while (len < 8 - over); -+ } while ((int64_t)len < 8 - over); - - // Address Type - for (j = 0; addr_type_complete[j].expand != ADDR_NONE; j++) { - if (addr_type_complete[j].expand != ADDR_LINES - && addr_type_complete[j].expand == cmd->uc_addr_type) { -- STRCPY(IObuff + len, addr_type_complete[j].shortname); -- len += (int)strlen(IObuff + len); -+ int rc = snprintf(IObuff + len, IOSIZE - len, "%s", addr_type_complete[j].shortname); -+ assert(rc > 0); -+ len += (size_t)rc; - break; - } - } - - do { - IObuff[len++] = ' '; -- } while (len < 13 - over); -+ } while ((int64_t)len < 13 - over); - - // Completion - char *cmd_compl = get_command_complete(cmd->uc_compl); - if (cmd_compl != NULL) { -- STRCPY(IObuff + len, get_command_complete(cmd->uc_compl)); -- len += (int)strlen(IObuff + len); -+ int rc = snprintf(IObuff + len, IOSIZE - len, "%s", get_command_complete(cmd->uc_compl)); -+ assert(rc > 0); -+ len += (size_t)rc; - } - - do { - IObuff[len++] = ' '; -- } while (len < 25 - over); -+ } while ((int64_t)len < 25 - over); - - IObuff[len] = '\0'; - msg_outtrans(IObuff); -diff --git a/test/functional/ex_cmds/excmd_spec.lua b/test/functional/ex_cmds/excmd_spec.lua -index e243f3c524d00..21bcdc079161c 100644 ---- a/test/functional/ex_cmds/excmd_spec.lua -+++ b/test/functional/ex_cmds/excmd_spec.lua -@@ -26,5 +26,9 @@ describe('Ex cmds', function() - pcall_err(command, ':bdelete 9999999999999999999999999999999999999999')) - assert_alive() - end) --end) - -+ it('listing long user command does not crash', function() -+ command('execute "command" repeat("T", 255) ":"') -+ command('command') -+ end) -+end) diff --git a/23375.patch b/23375.patch deleted file mode 100644 index 6db2251..0000000 --- a/23375.patch +++ /dev/null @@ -1,108 +0,0 @@ -From 46cd1d957c88ea229b50ccafa63878e14c4d57c9 Mon Sep 17 00:00:00 2001 -From: John Drouhard -Date: Fri, 28 Apr 2023 08:20:38 -0500 -Subject: [PATCH] perf(lsp): process semantic tokens response in a coroutine - that yields every 5ms - ---- - runtime/lua/vim/lsp/semantic_tokens.lua | 45 ++++++++++++++++++++----- - 1 file changed, 37 insertions(+), 8 deletions(-) - -diff --git a/runtime/lua/vim/lsp/semantic_tokens.lua b/runtime/lua/vim/lsp/semantic_tokens.lua -index 03532c33b7547..b6b09c58b1e60 100644 ---- a/runtime/lua/vim/lsp/semantic_tokens.lua -+++ b/runtime/lua/vim/lsp/semantic_tokens.lua -@@ -1,7 +1,8 @@ - local api = vim.api -+local bit = require('bit') - local handlers = require('vim.lsp.handlers') - local util = require('vim.lsp.util') --local bit = require('bit') -+local uv = vim.loop - - --- @class STTokenRange - --- @field line integer line number 0-based -@@ -94,15 +95,38 @@ end - --- - ---@private - ---@return STTokenRange[] --local function tokens_to_ranges(data, bufnr, client) -+local function tokens_to_ranges(data, bufnr, client, request) - local legend = client.server_capabilities.semanticTokensProvider.legend - local token_types = legend.tokenTypes - local token_modifiers = legend.tokenModifiers - local ranges = {} - -+ local start = uv.hrtime() -+ local ms_to_ns = 1000 * 1000 -+ local yield_interval_ns = 5 * ms_to_ns -+ local co, is_main = coroutine.running() -+ - local line - local start_char = 0 - for i = 1, #data, 5 do -+ -- if this function is called from the main coroutine, let it run to completion with no yield -+ if not is_main then -+ local elapsed_ns = uv.hrtime() - start -+ -+ if elapsed_ns > yield_interval_ns then -+ vim.schedule(function() -+ coroutine.resume(co, util.buf_versions[bufnr]) -+ end) -+ if request.version ~= coroutine.yield() then -+ -- request became stale since the last time the coroutine ran. -+ -- abandon it by yielding without a way to resume -+ coroutine.yield() -+ end -+ -+ start = uv.hrtime() -+ end -+ end -+ - local delta_line = data[i] - line = line and line + delta_line or delta_line - local delta_start = data[i + 1] -@@ -280,7 +304,7 @@ function STHighlighter:send_request() - local c = vim.lsp.get_client_by_id(ctx.client_id) - local highlighter = STHighlighter.active[ctx.bufnr] - if not err and c and highlighter then -- highlighter:process_response(response, c, version) -+ coroutine.wrap(STHighlighter.process_response)(highlighter, response, c, version) - end - end, self.bufnr) - -@@ -315,11 +339,9 @@ function STHighlighter:process_response(response, client, version) - return - end - -- -- reset active request -- state.active_request = {} -- - -- skip nil responses - if response == nil then -+ state.active_request = {} - return - end - -@@ -347,12 +369,19 @@ function STHighlighter:process_response(response, client, version) - tokens = response.data - end - -- -- Update the state with the new results -+ -- convert token list to highlight ranges -+ -- this could yield and run over multiple event loop iterations -+ local highlights = tokens_to_ranges(tokens, self.bufnr, client, state.active_request) -+ -+ -- reset active request -+ state.active_request = {} -+ -+ -- update the state with the new results - local current_result = state.current_result - current_result.version = version - current_result.result_id = response.resultId - current_result.tokens = tokens -- current_result.highlights = tokens_to_ranges(tokens, self.bufnr, client) -+ current_result.highlights = highlights - current_result.namespace_cleared = false - - -- redraw all windows displaying buffer diff --git a/neovim.spec b/neovim.spec index 45b174a..38b74d1 100644 --- a/neovim.spec +++ b/neovim.spec @@ -39,8 +39,8 @@ %endif Name: neovim -Version: 0.9.0 -Release: 3%{?dist} +Version: 0.9.1 +Release: 1%{?dist} License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility @@ -50,10 +50,6 @@ Source0: https://github.com/neovim/neovim/archive/v%{version}/%{name}-%{v Source1: sysinit.vim Source2: spec-template -Patch0: https://github.com/neovim/neovim/pull/23246.patch -Patch1: https://github.com/neovim/neovim/pull/23245.patch -Patch2: https://github.com/neovim/neovim/pull/23375.patch - Patch1000: neovim-lua-bit32.patch BuildRequires: gcc-c++ @@ -114,9 +110,6 @@ parts of Vim, without compromise, and more. %prep %setup -q -%patch -P 0 -p1 -%patch -P 1 -p1 -%patch -P 2 -p1 %if %{without luajit} %patch -P 1000 -p1 @@ -571,6 +564,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/crm.vim %{_datadir}/nvim/runtime/ftplugin/crontab.vim %{_datadir}/nvim/runtime/ftplugin/cs.vim +%{_datadir}/nvim/runtime/ftplugin/cs.lua %{_datadir}/nvim/runtime/ftplugin/csc.vim %{_datadir}/nvim/runtime/ftplugin/csh.vim %{_datadir}/nvim/runtime/ftplugin/css.lua @@ -1960,6 +1954,10 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Wed May 31 2023 Andreas Schneider - 0.9.1-1 +- Update to version 0.9.1 + * For changelog see `:help news` + * Tue May 02 2023 Andreas Schneider - 0.9.0-3 - Improve semantic token performance - related: rhbz#2188229 - Fix applying patches diff --git a/sources b/sources index bde8f1c..88c3b1a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (neovim-0.9.0.tar.gz) = e42f09f408b83fc34e8f169321e0349d1f851e67a998265c53d2ddb1a4792c3f4777fabe32baf2c7eff7d3745ff60d4a07da542ccd272883f7f4e080b2c9c1bf +SHA512 (neovim-0.9.1.tar.gz) = 339efd3d8c1a73aa3b43e8770d6943aeba9e4ce6a3598c0424e388f80759d50b14aa7c60fd435bf2d17997476e06d28b79e7e98670d02ca9ceec031841e8b9b8 From d5948650af479b178e011df1621a1e24eed99394 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Mon, 5 Jun 2023 07:48:30 +0200 Subject: [PATCH 12/60] Remove linker hack --- neovim.spec | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/neovim.spec b/neovim.spec index 38b74d1..d49d94d 100644 --- a/neovim.spec +++ b/neovim.spec @@ -124,10 +124,8 @@ USERNAME=koji -DLUA_PRG=%{lua_prg} \ -DENABLE_JEMALLOC=%{?with_jemalloc:ON}%{!?with_jemalloc:OFF} \ -DLIBLUV_INCLUDE_DIR:PATH=%{luv_include_dir} \ - -DLIBLUV_LIBRARY:FILEPATH=%{luv_library} + -DLIBLUV_LIBRARY:STRING=-Wl,%{luv_library} -# HACK: Replace -lluv with the correct path -sed -i 's#-lluv#%{luv_library}#' %{__cmake_builddir}/src/nvim/CMakeFiles/nvim.dir/link.txt %cmake_build %install From 07babc2166cb9bf323464ab6f4d3b5dacf0c5b6a Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Tue, 6 Jun 2023 09:05:34 +0200 Subject: [PATCH 13/60] Build with new libluv-devel --- neovim.spec | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/neovim.spec b/neovim.spec index d49d94d..10605f3 100644 --- a/neovim.spec +++ b/neovim.spec @@ -24,23 +24,18 @@ %global luv_min_ver 1.43.0 %global tree_sitter_min_ver 0.20.8 +%global luv_include_dir %{_includedir}/luv %if %{with luajit} %global luajit_version 2.1 %global lua_prg %{_bindir}/luajit - -%global luv_include_dir %{_includedir}/luajit-%{luajit_version} -%global luv_library %{_libdir}/luajit/%{luajit_version}/luv.so %else %global lua_version 5.1 %global lua_prg %{_bindir}/lua-5.1 - -%global luv_include_dir %{_includedir}/lua-%{lua_version} -%global luv_library %{_libdir}/lua/%{lua_version}/luv.so %endif Name: neovim Version: 0.9.1 -Release: 1%{?dist} +Release: 2%{?dist} License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility @@ -59,18 +54,17 @@ BuildRequires: fdupes BuildRequires: gettext BuildRequires: gperf BuildRequires: gcc +BuildRequires: libluv-devel >= %{luv_min_ver} %if %{with luajit} # luajit implements version 5.1 of the lua language spec, so it needs the # compat versions of libs. BuildRequires: luajit-devel -BuildRequires: luajit2.1-luv-devel >= %{luv_min_ver} Requires: luajit2.1-luv >= %{luv_min_ver} %else # lua5.1 BuildRequires: compat-lua BuildRequires: compat-lua-devel BuildRequires: lua5.1-bit32 -BuildRequires: lua5.1-luv-devel >= %{luv_min_ver} Requires: lua5.1-luv >= %{luv_min_ver} # /with luajit %endif @@ -124,7 +118,6 @@ USERNAME=koji -DLUA_PRG=%{lua_prg} \ -DENABLE_JEMALLOC=%{?with_jemalloc:ON}%{!?with_jemalloc:OFF} \ -DLIBLUV_INCLUDE_DIR:PATH=%{luv_include_dir} \ - -DLIBLUV_LIBRARY:STRING=-Wl,%{luv_library} %cmake_build @@ -1952,6 +1945,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Tue Jun 06 2023 Andreas Schneider - 0.9.1-2 +- Build with new libluv-devel + * Wed May 31 2023 Andreas Schneider - 0.9.1-1 - Update to version 0.9.1 * For changelog see `:help news` From 8a3ea7aada27f7678d458f6e56b22e998ce47065 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jul 2023 16:28:00 +0000 Subject: [PATCH 14/60] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- neovim.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/neovim.spec b/neovim.spec index 10605f3..417d2d0 100644 --- a/neovim.spec +++ b/neovim.spec @@ -35,7 +35,7 @@ Name: neovim Version: 0.9.1 -Release: 2%{?dist} +Release: 3%{?dist} License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility @@ -1945,6 +1945,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Thu Jul 20 2023 Fedora Release Engineering - 0.9.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Tue Jun 06 2023 Andreas Schneider - 0.9.1-2 - Build with new libluv-devel From eba3dfa55a715d12c5802bd27ef8c9bcc331dff4 Mon Sep 17 00:00:00 2001 From: LuK1337 Date: Mon, 28 Aug 2023 20:14:02 +0200 Subject: [PATCH 15/60] Improve spec template * %autorelease must not have {}, otherwise "Dist tag is present." error is triggered in fedora-review, see: https://pagure.io/FedoraReview/blob/d037481/f/plugins/generic.py#_425 * Also remove {} from %autochangelog while at it. --- neovim.spec | 5 ++++- spec-template | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/neovim.spec b/neovim.spec index 417d2d0..90189e0 100644 --- a/neovim.spec +++ b/neovim.spec @@ -35,7 +35,7 @@ Name: neovim Version: 0.9.1 -Release: 3%{?dist} +Release: 4%{?dist} License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility @@ -1945,6 +1945,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Mon Aug 28 2023 LuK1337 - 0.9.1-4 +- Improve spec template + * Thu Jul 20 2023 Fedora Release Engineering - 0.9.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild diff --git a/spec-template b/spec-template index 30e6437..cc35793 100644 --- a/spec-template +++ b/spec-template @@ -1,6 +1,6 @@ Name: Version: -Release: %{autorelease} +Release: %autorelease Summary: License: @@ -35,4 +35,4 @@ Requires: %changelog -%{autochangelog} +%autochangelog From 63b3075c2b9cdadb715aea7413ff29c0ea88ae8c Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Thu, 7 Sep 2023 16:08:13 +0200 Subject: [PATCH 16/60] Update to version 0.9.2 --- .gitignore | 1 + neovim.spec | 8 ++++++-- sources | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 71033ba..94c3c15 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,4 @@ /neovim-0.8.3.tar.gz /neovim-0.9.0.tar.gz /neovim-0.9.1.tar.gz +/neovim-0.9.2.tar.gz diff --git a/neovim.spec b/neovim.spec index 90189e0..00e6753 100644 --- a/neovim.spec +++ b/neovim.spec @@ -34,8 +34,8 @@ %endif Name: neovim -Version: 0.9.1 -Release: 4%{?dist} +Version: 0.9.2 +Release: 1%{?dist} License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility @@ -1945,6 +1945,10 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Thu Sep 07 2023 Andreas Schneider - 0.9.2-1 +- Update to version 0.9.2 + * For changelog see `:help news` + * Mon Aug 28 2023 LuK1337 - 0.9.1-4 - Improve spec template diff --git a/sources b/sources index 88c3b1a..14be258 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (neovim-0.9.1.tar.gz) = 339efd3d8c1a73aa3b43e8770d6943aeba9e4ce6a3598c0424e388f80759d50b14aa7c60fd435bf2d17997476e06d28b79e7e98670d02ca9ceec031841e8b9b8 +SHA512 (neovim-0.9.2.tar.gz) = f12ae48c82c4a3622e464a23966cb06e9da1a7cd000b4efeb8408bb55e189ffeb4ece99e9488244c16f7de70356303e4dc964afd70ab24d23a5e07c59e902ed9 From 713a572a8fb3e0b2cab5c3e6de4ff57ce79977d2 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Fri, 20 Oct 2023 15:49:13 +0200 Subject: [PATCH 17/60] Update to version 0.9.4 --- .gitignore | 1 + neovim-fix-cmake-find-libluv.patch | 15 +++++++++++++++ neovim.spec | 16 +++++++++++++--- sources | 2 +- 4 files changed, 30 insertions(+), 4 deletions(-) create mode 100644 neovim-fix-cmake-find-libluv.patch diff --git a/.gitignore b/.gitignore index 94c3c15..ec5f1b4 100644 --- a/.gitignore +++ b/.gitignore @@ -27,3 +27,4 @@ /neovim-0.9.0.tar.gz /neovim-0.9.1.tar.gz /neovim-0.9.2.tar.gz +/neovim-0.9.4.tar.gz diff --git a/neovim-fix-cmake-find-libluv.patch b/neovim-fix-cmake-find-libluv.patch new file mode 100644 index 0000000..36cfd1d --- /dev/null +++ b/neovim-fix-cmake-find-libluv.patch @@ -0,0 +1,15 @@ +Index: neovim-0.9.4/src/nvim/CMakeLists.txt +=================================================================== +--- neovim-0.9.4.orig/src/nvim/CMakeLists.txt 2023-10-09 22:38:17.000000000 +0200 ++++ neovim-0.9.4/src/nvim/CMakeLists.txt 2023-10-20 22:49:27.287874311 +0200 +@@ -3,8 +3,8 @@ add_executable(nvim main.c) + + add_library(libuv INTERFACE) + find_package(libuv CONFIG) +-if(TARGET libuv::uv_a) +- target_link_libraries(libuv INTERFACE libuv::uv_a) ++if(TARGET libuv::uv) ++ target_link_libraries(libuv INTERFACE libuv::uv) + mark_as_advanced(libuv_DIR) + else() + # Fall back to find module for older libuv versions that don't provide config file diff --git a/neovim.spec b/neovim.spec index 00e6753..db17e13 100644 --- a/neovim.spec +++ b/neovim.spec @@ -34,7 +34,7 @@ %endif Name: neovim -Version: 0.9.2 +Version: 0.9.4 Release: 1%{?dist} License: Apache-2.0 AND Vim @@ -45,6 +45,8 @@ Source0: https://github.com/neovim/neovim/archive/v%{version}/%{name}-%{v Source1: sysinit.vim Source2: spec-template +Patch0: neovim-fix-cmake-find-libluv.patch + Patch1000: neovim-lua-bit32.patch BuildRequires: gcc-c++ @@ -69,7 +71,7 @@ Requires: lua5.1-luv >= %{luv_min_ver} # /with luajit %endif BuildRequires: lua5.1-lpeg -BuildRequires: lua5.1-mpack +BuildRequires: lua5.1-mpack >= 1.0.11 %if %{with jemalloc} BuildRequires: jemalloc-devel %endif @@ -105,6 +107,7 @@ parts of Vim, without compromise, and more. %prep %setup -q +%patch -P 0 -p1 %if %{without luajit} %patch -P 1000 -p1 %endif @@ -562,6 +565,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/css.vim %{_datadir}/nvim/runtime/ftplugin/cucumber.vim %{_datadir}/nvim/runtime/ftplugin/cvsrc.vim +%{_datadir}/nvim/runtime/ftplugin/d.lua %{_datadir}/nvim/runtime/ftplugin/debchangelog.vim %{_datadir}/nvim/runtime/ftplugin/debcontrol.vim %{_datadir}/nvim/runtime/ftplugin/denyhosts.vim @@ -1087,7 +1091,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/lua/vim/_editor.lua %{_datadir}/nvim/runtime/lua/vim/_init_packages.lua %{_datadir}/nvim/runtime/lua/vim/_inspector.lua -%{_datadir}/nvim/runtime/lua/vim/_meta.lua +%{_datadir}/nvim/runtime/lua/vim/_options.lua %{_datadir}/nvim/runtime/lua/vim/_watch.lua %{_datadir}/nvim/runtime/lua/vim/diagnostic.lua %{_datadir}/nvim/runtime/lua/vim/filetype.lua @@ -1945,6 +1949,12 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Fri Oct 20 2023 Andreas Schneider - 0.9.4-1 +- Update to version 0.9.4 + * https://github.com/neovim/neovim/releases/tag/v0.9.4 + * For bigger version bump changelog see `:help news` + * resolves: rhbz#2243010 + * Thu Sep 07 2023 Andreas Schneider - 0.9.2-1 - Update to version 0.9.2 * For changelog see `:help news` diff --git a/sources b/sources index 14be258..f9fad0d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (neovim-0.9.2.tar.gz) = f12ae48c82c4a3622e464a23966cb06e9da1a7cd000b4efeb8408bb55e189ffeb4ece99e9488244c16f7de70356303e4dc964afd70ab24d23a5e07c59e902ed9 +SHA512 (neovim-0.9.4.tar.gz) = a9bac18aeecd99dfeab79b367c3f0c46003b95d057edb6fd18ba178d6b6f22434689508d0bfe91b2f771ef0a23a4888815e8c4001abb76f2a60357bab0cd7004 From eddffc3058e56445cb235c18e9ded0e128f992c3 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Tue, 2 Jan 2024 09:05:04 +0100 Subject: [PATCH 18/60] Update to version 0.9.5 resolves: rhbz#2256278 --- .gitignore | 6 ++++++ neovim.spec | 8 +++++++- sources | 2 +- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index ec5f1b4..88a99c7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,8 @@ +/*.log +/*.rpm +/series +/x86_64/ +/results_neovim/ /neovim-0.1.7.tar.gz /neovim-0.2.0.tar.gz /neovim-0.2.1.tar.gz @@ -28,3 +33,4 @@ /neovim-0.9.1.tar.gz /neovim-0.9.2.tar.gz /neovim-0.9.4.tar.gz +/neovim-0.9.5.tar.gz diff --git a/neovim.spec b/neovim.spec index db17e13..106071e 100644 --- a/neovim.spec +++ b/neovim.spec @@ -34,7 +34,7 @@ %endif Name: neovim -Version: 0.9.4 +Version: 0.9.5 Release: 1%{?dist} License: Apache-2.0 AND Vim @@ -1949,6 +1949,12 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Tue Jan 02 2024 Andreas Schneider - 0.9.5-1 +- Update to version 0.9.5 + * https://github.com/neovim/neovim/releases/tag/v0.9.5 + * For bigger version bump changelog see `:help news` + * resolves: rhbz#2256278 + * Fri Oct 20 2023 Andreas Schneider - 0.9.4-1 - Update to version 0.9.4 * https://github.com/neovim/neovim/releases/tag/v0.9.4 diff --git a/sources b/sources index f9fad0d..2846255 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (neovim-0.9.4.tar.gz) = a9bac18aeecd99dfeab79b367c3f0c46003b95d057edb6fd18ba178d6b6f22434689508d0bfe91b2f771ef0a23a4888815e8c4001abb76f2a60357bab0cd7004 +SHA512 (neovim-0.9.5.tar.gz) = 6e20d0a1d506dc292dd68dabe4b5635f86c019ca832f9927e907377e6d21fe7765b3010f5bba644bb2d7a76c178d55b290af24856a7e3c4083a1aa60bc496775 From e2bdab44866af07a0a2faf34ed3604d22a5d9dbf Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 21 Jan 2024 09:27:35 +0000 Subject: [PATCH 19/60] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- neovim.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/neovim.spec b/neovim.spec index 106071e..8d87c0e 100644 --- a/neovim.spec +++ b/neovim.spec @@ -35,7 +35,7 @@ Name: neovim Version: 0.9.5 -Release: 1%{?dist} +Release: 2%{?dist} License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility @@ -1949,6 +1949,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Sun Jan 21 2024 Fedora Release Engineering - 0.9.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Tue Jan 02 2024 Andreas Schneider - 0.9.5-1 - Update to version 0.9.5 * https://github.com/neovim/neovim/releases/tag/v0.9.5 From 312d588f94080922f357e01e8c56088f9520be9f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 25 Jan 2024 08:46:42 +0000 Subject: [PATCH 20/60] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- neovim.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/neovim.spec b/neovim.spec index 8d87c0e..f1b06df 100644 --- a/neovim.spec +++ b/neovim.spec @@ -35,7 +35,7 @@ Name: neovim Version: 0.9.5 -Release: 2%{?dist} +Release: 3%{?dist} License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility @@ -1949,6 +1949,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Thu Jan 25 2024 Fedora Release Engineering - 0.9.5-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Sun Jan 21 2024 Fedora Release Engineering - 0.9.5-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From fad09f04b15b8f012a13aa6deb3cb4ecb45aa353 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Mon, 4 Mar 2024 14:49:17 +0100 Subject: [PATCH 21/60] Build with luajit on s390x resolves: #2222911 --- neovim.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/neovim.spec b/neovim.spec index f1b06df..743acaa 100644 --- a/neovim.spec +++ b/neovim.spec @@ -5,7 +5,7 @@ %endif %bcond_with jemalloc -%ifarch %{arm} %{ix86} x86_64 %{mips} +%ifarch %{arm} %{ix86} x86_64 %{mips} s390x %bcond_without luajit %else %ifarch aarch64 @@ -35,7 +35,7 @@ Name: neovim Version: 0.9.5 -Release: 3%{?dist} +Release: 4%{?dist} License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility @@ -1949,6 +1949,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Mon Mar 04 2024 Andreas Schneider - 0.9.5-4 +- resolves: #2222911 - Build with luajit on s390x + * Thu Jan 25 2024 Fedora Release Engineering - 0.9.5-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 131b4e07958f8c86bba272112f9bbcb423c06796 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Thu, 16 May 2024 16:51:41 +0200 Subject: [PATCH 22/60] Convert to %autochangelog [skip changelog] --- changelog | 294 +++++++++++++++++++++++++++++++++++++++++++++++++++ neovim.spec | 297 +--------------------------------------------------- 2 files changed, 296 insertions(+), 295 deletions(-) create mode 100644 changelog diff --git a/changelog b/changelog new file mode 100644 index 0000000..8a2b300 --- /dev/null +++ b/changelog @@ -0,0 +1,294 @@ +* Mon Mar 04 2024 Andreas Schneider - 0.9.5-4 +- resolves: #2222911 - Build with luajit on s390x + +* Thu Jan 25 2024 Fedora Release Engineering - 0.9.5-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sun Jan 21 2024 Fedora Release Engineering - 0.9.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Tue Jan 02 2024 Andreas Schneider - 0.9.5-1 +- Update to version 0.9.5 + * https://github.com/neovim/neovim/releases/tag/v0.9.5 + * For bigger version bump changelog see `:help news` + * resolves: rhbz#2256278 + +* Fri Oct 20 2023 Andreas Schneider - 0.9.4-1 +- Update to version 0.9.4 + * https://github.com/neovim/neovim/releases/tag/v0.9.4 + * For bigger version bump changelog see `:help news` + * resolves: rhbz#2243010 + +* Thu Sep 07 2023 Andreas Schneider - 0.9.2-1 +- Update to version 0.9.2 + * For changelog see `:help news` + +* Mon Aug 28 2023 LuK1337 - 0.9.1-4 +- Improve spec template + +* Thu Jul 20 2023 Fedora Release Engineering - 0.9.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Tue Jun 06 2023 Andreas Schneider - 0.9.1-2 +- Build with new libluv-devel + +* Wed May 31 2023 Andreas Schneider - 0.9.1-1 +- Update to version 0.9.1 + * For changelog see `:help news` + +* Tue May 02 2023 Andreas Schneider - 0.9.0-3 +- Improve semantic token performance +- related: rhbz#2188229 - Fix applying patches + +* Fri Apr 21 2023 Andreas Schneider - 0.9.0-2 +- resolves: rhbz#2188229 - Fix buffer overflow for user command + +* Fri Apr 07 2023 Andreas Schneider - 0.9.0-1 +- Update to version 0.9.0 + * For changelog see `:help news` + +* Mon Mar 27 2023 Andreas Schneider - 0.8.3-4 +- resolves: rhbz#2181836 - Fix snprintf buffer overflow with tags + +* Sat Mar 25 2023 Andreas Schneider - 0.8.3-3 +- resolves: rhbz#2165805 - Fix snprintf buffer overflow + +* Sun Mar 05 2023 Andreas Schneider - 0.8.3-2 +- Update License to SPDX expression +- Update spec template for auto(release|changelog) + +* Thu Feb 02 2023 Andreas Schneider - 0.8.3-1 +- Update to version 0.8.3 + * https://github.com/neovim/neovim/releases/tag/v0.8.3 + +* Thu Jan 19 2023 Fedora Release Engineering - 0.8.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Fri Dec 30 2022 Andreas Schneider - 0.8.2-1 +- Update to version 0.8.2 + * https://github.com/neovim/neovim/releases/tag/v0.8.2 + +* Mon Nov 14 2022 Andreas Schneider - 0.8.1-1 +- Update to version 0.8.1 + * https://github.com/neovim/neovim/releases/tag/v0.8.1 + +* Fri Sep 30 2022 Andreas Schneider - 0.8.0-1 +- Update to version 0.8.0 + * https://github.com/neovim/neovim/releases/tag/v0.8.0 + +* Wed Sep 21 2022 Andreas Schneider - 0.7.2-4 +- Build with libvterm 0.3 + +* Thu Aug 25 2022 Michel Alexandre Salim - 0.7.2-3 +- Enforce the minimum tree-sitter version at runtime (Fixes: rhbz#2100577) + +* Fri Jul 22 2022 Fedora Release Engineering - 0.7.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Sun Jun 26 2022 Andreas Schneider - 0.7.2-1 +- Update to version 0.7.2 + +* Fri Apr 15 2022 Andreas Schneider - 0.7.0-1 +- Update to version 0.7.0 + +* Thu Mar 17 2022 Michel Alexandre Salim - 0.6.1-4 +- Support building on EPEL 8 + +* Wed Feb 09 2022 Andreas Schneider - 0.6.1-3 +- Fix libvterm 0.2 support + +* Thu Jan 20 2022 Fedora Release Engineering - 0.6.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Sat Jan 01 2022 Andreas Schneider - 0.6.1-1 +- Update to version 0.6.1 + +* Wed Dec 01 2021 Andreas Schneider - 0.6.0-1 +- Update to version 0.6.0 + +* Thu Oct 28 2021 Andreas Schneider - 0.5.1-2 +- Use luajit also on aarch64 + +* Mon Sep 27 2021 Andreas Schneider - 0.5.1-1 +- Update to version 0.5.1 + +* Fri Jul 30 2021 Andreas Schneider - 0.5.0-5 +- Build with luajit2.1-luv when we use luajit + +* Fri Jul 30 2021 Andreas Schneider - 0.5.0-4 +- resolves: rhbz#1983288 - Build with lua-5.1 on platforms where luajit is not + available + +* Thu Jul 22 2021 Fedora Release Engineering - 0.5.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Thu Jul 08 2021 Andreas Schneider - 0.5.0-2 +- Fixed execute bits of bat and awk files + +* Mon Jul 05 2021 Andreas Schneider - 0.5.0-1 +- Raise BuildRequires for some libraries + +* Sat Jul 03 2021 Andreas Schneider - 0.5.0-0 +- Update to version 0.5.0 + * https://github.com/neovim/neovim/releases/tag/v0.5.0 + +* Mon Apr 19 2021 Andreas Schneider - 0.4.4-5 +- resolves: #1909495 - Load installed vim plugins +- Make build reproducible + +* Tue Jan 26 2021 Fedora Release Engineering - 0.4.4-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Tue Sep 1 2020 Michel Alexandre Salim - 0.4.4-3 +- When using Lua 5.4, also pull in lua-bit32 at installation + +* Mon Aug 31 2020 Michel Alexandre Salim - 0.4.4-2 +- Do not hardcode Lua version +- Patch to support detecting Lua 5.4 +- Pull in lua-bit32 when built against Lua 5.4 + +* Wed Aug 05 2020 Andreas Schneider - 0.4.4-1 +- Update to version 0.4.4 +- Use new cmake macros + +* Sat Aug 01 2020 Fedora Release Engineering - 0.4.3-8 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Jul 28 2020 Fedora Release Engineering - 0.4.3-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Sun Mar 22 2020 Michel Alexandre Salim - 0.4.3-6 +- Update build requirements + +* Sun Feb 23 2020 Andreas Schneider - 0.4.3-5 +- Update to upstream patchset for -fno-common + +* Mon Feb 17 2020 Andreas Schneider - 0.4.3-4 +- Update patchset for -fno-common + +* Mon Feb 17 2020 Andreas Schneider - 0.4.3-3 +- resolves: #1799680 - Fix -fno-common issues + +* Wed Jan 29 2020 Fedora Release Engineering - 0.4.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Thu Nov 07 2019 Andreas Schneider - 0.4.3-1 +- Update to version 0.4.3 + +* Mon Oct 28 2019 Igor Gnatenko - 0.4.2-2 +- Fix glitches for terminals sayin xterm but not xterm + +* Thu Oct 03 2019 Andreas Schneider - 0.4.2-1 +- Update to version 0.4.2 + +* Thu Jul 25 2019 Fedora Release Engineering - 0.3.8-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Fri Jul 05 2019 Andreas Schneider - 0.3.8-1 +- Update to version 0.3.8 + +* Wed May 29 2019 Andreas Schneider - 0.3.7-1 +- Update to version 0.3.7 + +* Wed May 29 2019 Andreas Schneider - 0.3.6-1 +- resolves: #1714849 - Update to version 0.3.6 + +* Tue May 07 2019 Andreas Schneider - 0.3.5-1 +- resolves: #1703867 - Update to version 0.3.5 + +* Wed Mar 06 2019 Aron Griffis - 0.3.4-1 +- Update to version 0.3.4 with luajit, rhbz #1685781 + +* Fri Feb 01 2019 Fedora Release Engineering - 0.3.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Mon Jan 07 2019 Igor Gnatenko - 0.3.3-2 +- Remove Recommends: xterm + +* Sun Jan 06 2019 Andreas Schneider - 0.3.3-1 +- Update to version 0.3.3 + +* Wed Jan 02 2019 Andreas Schneider - 0.3.2-1 +- Update to version 0.3.2 + +* Fri Aug 10 2018 Andreas Schneider - 0.3.1-1 +- Update to version 0.3.1 + +* Tue Jul 31 2018 Florian Weimer - 0.3.0-6 +- Rebuild with fixed binutils + +* Fri Jul 27 2018 Igor Gnatenko - 0.3.0-5 +- Rebuild for new binutils + +* Fri Jul 27 2018 Igor Gnatenko - 0.3.0-4 +- Disable jemalloc + +* Fri Jul 13 2018 Fedora Release Engineering - 0.3.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Tue Jun 19 2018 Andreas Schneider - 0.3.0-2 +- resolves: #1592474 - Add jemalloc as a requirement + +* Mon Jun 11 2018 Andreas Schneider - 0.3.0-1 +- Update to version 0.3.0 +- resolves: #1450624 - Set default python_host_prog + +* Sat May 26 2018 Andreas Schneider - 0.2.2-3 +- Rebuild against unibilium-2.0.0 + +* Thu Feb 08 2018 Fedora Release Engineering - 0.2.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Sat Dec 23 2017 Andreas Schneider - 0.2.2-1 +- resolves: #1510899 - Update to version 0.2.2 + +* Wed Nov 08 2017 Andreas Schneider - 0.2.1-1 +- resolves: #1510762 - Update to version 0.2.1 + +* Thu Aug 03 2017 Fedora Release Engineering - 0.2.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 0.2.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Wed May 31 2017 Than Ngo 0.2.0-3 +- fixed bz#1451143, ppc64/le build failure + +* Mon May 15 2017 Michel Alexandre Salim - 0.2.0-2 +- Adjust spec for building on epel7 + +* Mon May 08 2017 Andreas Schneider - 0.2.0-1 +- resolves: #1447481 - Update to 0.2.0 + +* Fri Feb 10 2017 Fedora Release Engineering - 0.1.7-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Thu Dec 29 2016 Filip Szymański - 0.1.7-6 +- Add RPM spec file template + +* Thu Dec 08 2016 Filip Szymański - 0.1.7-5 +- Add recommends for python2-neovim and xsel +- Remove unused CMake options +- Use %%make_build and %%make_install macros +- Remove unnecessary %%defattr directive + +* Mon Dec 05 2016 Andreas Schneider - 0.1.7-4 +- Set license file correctly + +* Mon Dec 05 2016 Andreas Schneider - 0.1.7-3 +- Update build requires + +* Mon Dec 05 2016 Andreas Schneider - 0.1.7-2 +- Add Recommends for python3-neovim +- Use 'bit32' from lua 5.3 + +* Mon Nov 28 2016 Andreas Schneider - 0.1.7-1 +- Update to version 0.1.7 + +* Tue Nov 15 2016 Andreas Schneider - 0.1.6-2 +- Removed Group: +- Removed BuildRoot: + +* Thu Nov 10 2016 Andreas Schneider - 0.1.6-1 +- Initial version 0.1.6 diff --git a/neovim.spec b/neovim.spec index 743acaa..78f4ebe 100644 --- a/neovim.spec +++ b/neovim.spec @@ -35,7 +35,7 @@ Name: neovim Version: 0.9.5 -Release: 4%{?dist} +Release: %autorelease License: Apache-2.0 AND Vim Summary: Vim-fork focused on extensibility and agility @@ -1949,297 +1949,4 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog -* Mon Mar 04 2024 Andreas Schneider - 0.9.5-4 -- resolves: #2222911 - Build with luajit on s390x - -* Thu Jan 25 2024 Fedora Release Engineering - 0.9.5-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Sun Jan 21 2024 Fedora Release Engineering - 0.9.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Tue Jan 02 2024 Andreas Schneider - 0.9.5-1 -- Update to version 0.9.5 - * https://github.com/neovim/neovim/releases/tag/v0.9.5 - * For bigger version bump changelog see `:help news` - * resolves: rhbz#2256278 - -* Fri Oct 20 2023 Andreas Schneider - 0.9.4-1 -- Update to version 0.9.4 - * https://github.com/neovim/neovim/releases/tag/v0.9.4 - * For bigger version bump changelog see `:help news` - * resolves: rhbz#2243010 - -* Thu Sep 07 2023 Andreas Schneider - 0.9.2-1 -- Update to version 0.9.2 - * For changelog see `:help news` - -* Mon Aug 28 2023 LuK1337 - 0.9.1-4 -- Improve spec template - -* Thu Jul 20 2023 Fedora Release Engineering - 0.9.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Tue Jun 06 2023 Andreas Schneider - 0.9.1-2 -- Build with new libluv-devel - -* Wed May 31 2023 Andreas Schneider - 0.9.1-1 -- Update to version 0.9.1 - * For changelog see `:help news` - -* Tue May 02 2023 Andreas Schneider - 0.9.0-3 -- Improve semantic token performance -- related: rhbz#2188229 - Fix applying patches - -* Fri Apr 21 2023 Andreas Schneider - 0.9.0-2 -- resolves: rhbz#2188229 - Fix buffer overflow for user command - -* Fri Apr 07 2023 Andreas Schneider - 0.9.0-1 -- Update to version 0.9.0 - * For changelog see `:help news` - -* Mon Mar 27 2023 Andreas Schneider - 0.8.3-4 -- resolves: rhbz#2181836 - Fix snprintf buffer overflow with tags - -* Sat Mar 25 2023 Andreas Schneider - 0.8.3-3 -- resolves: rhbz#2165805 - Fix snprintf buffer overflow - -* Sun Mar 05 2023 Andreas Schneider - 0.8.3-2 -- Update License to SPDX expression -- Update spec template for auto(release|changelog) - -* Thu Feb 02 2023 Andreas Schneider - 0.8.3-1 -- Update to version 0.8.3 - * https://github.com/neovim/neovim/releases/tag/v0.8.3 - -* Thu Jan 19 2023 Fedora Release Engineering - 0.8.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Fri Dec 30 2022 Andreas Schneider - 0.8.2-1 -- Update to version 0.8.2 - * https://github.com/neovim/neovim/releases/tag/v0.8.2 - -* Mon Nov 14 2022 Andreas Schneider - 0.8.1-1 -- Update to version 0.8.1 - * https://github.com/neovim/neovim/releases/tag/v0.8.1 - -* Fri Sep 30 2022 Andreas Schneider - 0.8.0-1 -- Update to version 0.8.0 - * https://github.com/neovim/neovim/releases/tag/v0.8.0 - -* Wed Sep 21 2022 Andreas Schneider - 0.7.2-4 -- Build with libvterm 0.3 - -* Thu Aug 25 2022 Michel Alexandre Salim - 0.7.2-3 -- Enforce the minimum tree-sitter version at runtime (Fixes: rhbz#2100577) - -* Fri Jul 22 2022 Fedora Release Engineering - 0.7.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Sun Jun 26 2022 Andreas Schneider - 0.7.2-1 -- Update to version 0.7.2 - -* Fri Apr 15 2022 Andreas Schneider - 0.7.0-1 -- Update to version 0.7.0 - -* Thu Mar 17 2022 Michel Alexandre Salim - 0.6.1-4 -- Support building on EPEL 8 - -* Wed Feb 09 2022 Andreas Schneider - 0.6.1-3 -- Fix libvterm 0.2 support - -* Thu Jan 20 2022 Fedora Release Engineering - 0.6.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Sat Jan 01 2022 Andreas Schneider - 0.6.1-1 -- Update to version 0.6.1 - -* Wed Dec 01 2021 Andreas Schneider - 0.6.0-1 -- Update to version 0.6.0 - -* Thu Oct 28 2021 Andreas Schneider - 0.5.1-2 -- Use luajit also on aarch64 - -* Mon Sep 27 2021 Andreas Schneider - 0.5.1-1 -- Update to version 0.5.1 - -* Fri Jul 30 2021 Andreas Schneider - 0.5.0-5 -- Build with luajit2.1-luv when we use luajit - -* Fri Jul 30 2021 Andreas Schneider - 0.5.0-4 -- resolves: rhbz#1983288 - Build with lua-5.1 on platforms where luajit is not - available - -* Thu Jul 22 2021 Fedora Release Engineering - 0.5.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Thu Jul 08 2021 Andreas Schneider - 0.5.0-2 -- Fixed execute bits of bat and awk files - -* Mon Jul 05 2021 Andreas Schneider - 0.5.0-1 -- Raise BuildRequires for some libraries - -* Sat Jul 03 2021 Andreas Schneider - 0.5.0-0 -- Update to version 0.5.0 - * https://github.com/neovim/neovim/releases/tag/v0.5.0 - -* Mon Apr 19 2021 Andreas Schneider - 0.4.4-5 -- resolves: #1909495 - Load installed vim plugins -- Make build reproducible - -* Tue Jan 26 2021 Fedora Release Engineering - 0.4.4-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Tue Sep 1 2020 Michel Alexandre Salim - 0.4.4-3 -- When using Lua 5.4, also pull in lua-bit32 at installation - -* Mon Aug 31 2020 Michel Alexandre Salim - 0.4.4-2 -- Do not hardcode Lua version -- Patch to support detecting Lua 5.4 -- Pull in lua-bit32 when built against Lua 5.4 - -* Wed Aug 05 2020 Andreas Schneider - 0.4.4-1 -- Update to version 0.4.4 -- Use new cmake macros - -* Sat Aug 01 2020 Fedora Release Engineering - 0.4.3-8 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Tue Jul 28 2020 Fedora Release Engineering - 0.4.3-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Sun Mar 22 2020 Michel Alexandre Salim - 0.4.3-6 -- Update build requirements - -* Sun Feb 23 2020 Andreas Schneider - 0.4.3-5 -- Update to upstream patchset for -fno-common - -* Mon Feb 17 2020 Andreas Schneider - 0.4.3-4 -- Update patchset for -fno-common - -* Mon Feb 17 2020 Andreas Schneider - 0.4.3-3 -- resolves: #1799680 - Fix -fno-common issues - -* Wed Jan 29 2020 Fedora Release Engineering - 0.4.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Thu Nov 07 2019 Andreas Schneider - 0.4.3-1 -- Update to version 0.4.3 - -* Mon Oct 28 2019 Igor Gnatenko - 0.4.2-2 -- Fix glitches for terminals sayin xterm but not xterm - -* Thu Oct 03 2019 Andreas Schneider - 0.4.2-1 -- Update to version 0.4.2 - -* Thu Jul 25 2019 Fedora Release Engineering - 0.3.8-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Fri Jul 05 2019 Andreas Schneider - 0.3.8-1 -- Update to version 0.3.8 - -* Wed May 29 2019 Andreas Schneider - 0.3.7-1 -- Update to version 0.3.7 - -* Wed May 29 2019 Andreas Schneider - 0.3.6-1 -- resolves: #1714849 - Update to version 0.3.6 - -* Tue May 07 2019 Andreas Schneider - 0.3.5-1 -- resolves: #1703867 - Update to version 0.3.5 - -* Wed Mar 06 2019 Aron Griffis - 0.3.4-1 -- Update to version 0.3.4 with luajit, rhbz #1685781 - -* Fri Feb 01 2019 Fedora Release Engineering - 0.3.3-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Mon Jan 07 2019 Igor Gnatenko - 0.3.3-2 -- Remove Recommends: xterm - -* Sun Jan 06 2019 Andreas Schneider - 0.3.3-1 -- Update to version 0.3.3 - -* Wed Jan 02 2019 Andreas Schneider - 0.3.2-1 -- Update to version 0.3.2 - -* Fri Aug 10 2018 Andreas Schneider - 0.3.1-1 -- Update to version 0.3.1 - -* Tue Jul 31 2018 Florian Weimer - 0.3.0-6 -- Rebuild with fixed binutils - -* Fri Jul 27 2018 Igor Gnatenko - 0.3.0-5 -- Rebuild for new binutils - -* Fri Jul 27 2018 Igor Gnatenko - 0.3.0-4 -- Disable jemalloc - -* Fri Jul 13 2018 Fedora Release Engineering - 0.3.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Tue Jun 19 2018 Andreas Schneider - 0.3.0-2 -- resolves: #1592474 - Add jemalloc as a requirement - -* Mon Jun 11 2018 Andreas Schneider - 0.3.0-1 -- Update to version 0.3.0 -- resolves: #1450624 - Set default python_host_prog - -* Sat May 26 2018 Andreas Schneider - 0.2.2-3 -- Rebuild against unibilium-2.0.0 - -* Thu Feb 08 2018 Fedora Release Engineering - 0.2.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Sat Dec 23 2017 Andreas Schneider - 0.2.2-1 -- resolves: #1510899 - Update to version 0.2.2 - -* Wed Nov 08 2017 Andreas Schneider - 0.2.1-1 -- resolves: #1510762 - Update to version 0.2.1 - -* Thu Aug 03 2017 Fedora Release Engineering - 0.2.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 0.2.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Wed May 31 2017 Than Ngo 0.2.0-3 -- fixed bz#1451143, ppc64/le build failure - -* Mon May 15 2017 Michel Alexandre Salim - 0.2.0-2 -- Adjust spec for building on epel7 - -* Mon May 08 2017 Andreas Schneider - 0.2.0-1 -- resolves: #1447481 - Update to 0.2.0 - -* Fri Feb 10 2017 Fedora Release Engineering - 0.1.7-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Thu Dec 29 2016 Filip Szymański - 0.1.7-6 -- Add RPM spec file template - -* Thu Dec 08 2016 Filip Szymański - 0.1.7-5 -- Add recommends for python2-neovim and xsel -- Remove unused CMake options -- Use %%make_build and %%make_install macros -- Remove unnecessary %%defattr directive - -* Mon Dec 05 2016 Andreas Schneider - 0.1.7-4 -- Set license file correctly - -* Mon Dec 05 2016 Andreas Schneider - 0.1.7-3 -- Update build requires - -* Mon Dec 05 2016 Andreas Schneider - 0.1.7-2 -- Add Recommends for python3-neovim -- Use 'bit32' from lua 5.3 - -* Mon Nov 28 2016 Andreas Schneider - 0.1.7-1 -- Update to version 0.1.7 - -* Tue Nov 15 2016 Andreas Schneider - 0.1.6-2 -- Removed Group: -- Removed BuildRoot: - -* Thu Nov 10 2016 Andreas Schneider - 0.1.6-1 -- Initial version 0.1.6 +%autochangelog From c042ccc21a1267748af5219f6002a61211f515d0 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Thu, 16 May 2024 16:28:11 +0200 Subject: [PATCH 23/60] Update to version 0.10.0 - check `:help news` for important changes --- .gitignore | 1 + neovim-fix-cmake-find-libluv.patch | 15 - neovim.spec | 1781 ++-------------------------- sources | 2 +- 4 files changed, 120 insertions(+), 1679 deletions(-) delete mode 100644 neovim-fix-cmake-find-libluv.patch diff --git a/.gitignore b/.gitignore index 88a99c7..33b3c89 100644 --- a/.gitignore +++ b/.gitignore @@ -34,3 +34,4 @@ /neovim-0.9.2.tar.gz /neovim-0.9.4.tar.gz /neovim-0.9.5.tar.gz +/neovim-0.10.0.tar.gz diff --git a/neovim-fix-cmake-find-libluv.patch b/neovim-fix-cmake-find-libluv.patch deleted file mode 100644 index 36cfd1d..0000000 --- a/neovim-fix-cmake-find-libluv.patch +++ /dev/null @@ -1,15 +0,0 @@ -Index: neovim-0.9.4/src/nvim/CMakeLists.txt -=================================================================== ---- neovim-0.9.4.orig/src/nvim/CMakeLists.txt 2023-10-09 22:38:17.000000000 +0200 -+++ neovim-0.9.4/src/nvim/CMakeLists.txt 2023-10-20 22:49:27.287874311 +0200 -@@ -3,8 +3,8 @@ add_executable(nvim main.c) - - add_library(libuv INTERFACE) - find_package(libuv CONFIG) --if(TARGET libuv::uv_a) -- target_link_libraries(libuv INTERFACE libuv::uv_a) -+if(TARGET libuv::uv) -+ target_link_libraries(libuv INTERFACE libuv::uv) - mark_as_advanced(libuv_DIR) - else() - # Fall back to find module for older libuv versions that don't provide config file diff --git a/neovim.spec b/neovim.spec index 78f4ebe..22cd8b4 100644 --- a/neovim.spec +++ b/neovim.spec @@ -34,7 +34,7 @@ %endif Name: neovim -Version: 0.9.5 +Version: 0.10.0 Release: %autorelease License: Apache-2.0 AND Vim @@ -45,8 +45,6 @@ Source0: https://github.com/neovim/neovim/archive/v%{version}/%{name}-%{v Source1: sysinit.vim Source2: spec-template -Patch0: neovim-fix-cmake-find-libluv.patch - Patch1000: neovim-lua-bit32.patch BuildRequires: gcc-c++ @@ -93,6 +91,7 @@ Suggests: (python3-neovim if python3) # XSel provides access to the system clipboard Recommends: xsel Recommends: wl-clipboard +Recommends: ripgrep %description Neovim is a refactor - and sometimes redactor - in the tradition of @@ -107,7 +106,6 @@ parts of Vim, without compromise, and more. %prep %setup -q -%patch -P 0 -p1 %if %{without luajit} %patch -P 1000 -p1 %endif @@ -143,7 +141,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %files -f nvim.lang %license LICENSE.txt -%doc BACKERS.md CONTRIBUTING.md README.md +%doc CONTRIBUTING.md MAINTAIN.md README.md %{_bindir}/nvim %{_mandir}/man1/nvim.1* @@ -156,822 +154,68 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/template.spec %dir %{_datadir}/nvim/runtime -%{_datadir}/nvim/runtime/bugreport.vim -%{_datadir}/nvim/runtime/delmenu.vim +%{_datadir}/nvim/runtime/*.vim %{_datadir}/nvim/runtime/filetype.lua -%{_datadir}/nvim/runtime/ftoff.vim -%{_datadir}/nvim/runtime/ftplugin.vim -%{_datadir}/nvim/runtime/ftplugof.vim -%{_datadir}/nvim/runtime/indent.vim -%{_datadir}/nvim/runtime/indoff.vim -%{_datadir}/nvim/runtime/macmap.vim -%{_datadir}/nvim/runtime/makemenu.vim -%{_datadir}/nvim/runtime/menu.vim -%{_datadir}/nvim/runtime/mswin.vim %{_datadir}/nvim/runtime/neovim.ico -%{_datadir}/nvim/runtime/optwin.vim -%{_datadir}/nvim/runtime/synmenu.vim %dir %{_datadir}/nvim/runtime/autoload %{_datadir}/nvim/runtime/autoload/README.txt -%{_datadir}/nvim/runtime/autoload/RstFold.vim -%{_datadir}/nvim/runtime/autoload/ada.vim -%{_datadir}/nvim/runtime/autoload/adacomplete.vim -%{_datadir}/nvim/runtime/autoload/bitbake.vim -%{_datadir}/nvim/runtime/autoload/ccomplete.lua -%{_datadir}/nvim/runtime/autoload/ccomplete.vim -%{_datadir}/nvim/runtime/autoload/clojurecomplete.vim -%{_datadir}/nvim/runtime/autoload/context.vim -%{_datadir}/nvim/runtime/autoload/contextcomplete.vim -%{_datadir}/nvim/runtime/autoload/csscomplete.vim -%{_datadir}/nvim/runtime/autoload/decada.vim -%{_datadir}/nvim/runtime/autoload/freebasic.vim -%{_datadir}/nvim/runtime/autoload/gnat.vim -%{_datadir}/nvim/runtime/autoload/gzip.vim -%{_datadir}/nvim/runtime/autoload/haskellcomplete.vim -%{_datadir}/nvim/runtime/autoload/health.vim -%{_datadir}/nvim/runtime/autoload/health/provider.vim -%{_datadir}/nvim/runtime/autoload/htmlcomplete.vim -%{_datadir}/nvim/runtime/autoload/javascriptcomplete.vim -%{_datadir}/nvim/runtime/autoload/msgpack.vim -%{_datadir}/nvim/runtime/autoload/netrw.vim -%{_datadir}/nvim/runtime/autoload/netrwFileHandlers.vim -%{_datadir}/nvim/runtime/autoload/netrwSettings.vim -%{_datadir}/nvim/runtime/autoload/netrw_gitignore.vim -%{_datadir}/nvim/runtime/autoload/paste.vim -%{_datadir}/nvim/runtime/autoload/phpcomplete.vim -%{_datadir}/nvim/runtime/autoload/provider.vim -%{_datadir}/nvim/runtime/autoload/python.vim -%{_datadir}/nvim/runtime/autoload/python3complete.vim -%{_datadir}/nvim/runtime/autoload/pythoncomplete.vim -%{_datadir}/nvim/runtime/autoload/rubycomplete.vim -%{_datadir}/nvim/runtime/autoload/rust.vim -%{_datadir}/nvim/runtime/autoload/rustfmt.vim -%{_datadir}/nvim/runtime/autoload/shada.vim -%{_datadir}/nvim/runtime/autoload/spellfile.vim -%{_datadir}/nvim/runtime/autoload/sqlcomplete.vim -%{_datadir}/nvim/runtime/autoload/syntaxcomplete.vim -%{_datadir}/nvim/runtime/autoload/tar.vim -%{_datadir}/nvim/runtime/autoload/tohtml.vim -%{_datadir}/nvim/runtime/autoload/tutor.vim -%{_datadir}/nvim/runtime/autoload/vimexpect.vim -%{_datadir}/nvim/runtime/autoload/xmlcomplete.vim -%{_datadir}/nvim/runtime/autoload/xmlformat.vim -%{_datadir}/nvim/runtime/autoload/zip.vim +%{_datadir}/nvim/runtime/autoload/*.lua +%{_datadir}/nvim/runtime/autoload/*.vim + +%dir %{_datadir}/nvim/runtime/autoload/cargo +%{_datadir}/nvim/runtime/autoload/cargo/*.vim + +%dir %{_datadir}/nvim/runtime/autoload/dist +%{_datadir}/nvim/runtime/autoload/dist/*.vim %dir %{_datadir}/nvim/runtime/autoload/provider -%{_datadir}/nvim/runtime/autoload/provider/clipboard.vim -%{_datadir}/nvim/runtime/autoload/provider/node.vim -%{_datadir}/nvim/runtime/autoload/provider/perl.vim -%{_datadir}/nvim/runtime/autoload/provider/python3.vim -%{_datadir}/nvim/runtime/autoload/provider/pythonx.vim -%{_datadir}/nvim/runtime/autoload/provider/ruby.vim +%{_datadir}/nvim/runtime/autoload/provider/*.vim %{_datadir}/nvim/runtime/autoload/provider/script_host.rb %dir %{_datadir}/nvim/runtime/autoload/remote -%{_datadir}/nvim/runtime/autoload/remote/define.vim -%{_datadir}/nvim/runtime/autoload/remote/host.vim +%{_datadir}/nvim/runtime/autoload/remote/*.vim + +%dir %{_datadir}/nvim/runtime/autoload/rust +%{_datadir}/nvim/runtime/autoload/rust/*.vim %dir %{_datadir}/nvim/runtime/autoload/xml -%{_datadir}/nvim/runtime/autoload/xml/xsl.vim -%{_datadir}/nvim/runtime/autoload/xml/xhtml10f.vim -%{_datadir}/nvim/runtime/autoload/xml/html40s.vim -%{_datadir}/nvim/runtime/autoload/xml/html401s.vim -%{_datadir}/nvim/runtime/autoload/xml/xsd.vim -%{_datadir}/nvim/runtime/autoload/xml/html32.vim -%{_datadir}/nvim/runtime/autoload/xml/html40f.vim -%{_datadir}/nvim/runtime/autoload/xml/html401t.vim -%{_datadir}/nvim/runtime/autoload/xml/xhtml10t.vim -%{_datadir}/nvim/runtime/autoload/xml/xhtml10s.vim -%{_datadir}/nvim/runtime/autoload/xml/xhtml11.vim -%{_datadir}/nvim/runtime/autoload/xml/html40t.vim -%{_datadir}/nvim/runtime/autoload/xml/html401f.vim +%{_datadir}/nvim/runtime/autoload/xml/*.vim %dir %{_datadir}/nvim/runtime/autoload/zig -%{_datadir}/nvim/runtime/autoload/zig/fmt.vim +%{_datadir}/nvim/runtime/autoload/zig/*.vim %dir %{_datadir}/nvim/runtime/colors +%{_datadir}/nvim/runtime/colors/*.lua +%{_datadir}/nvim/runtime/colors/*.vim %{_datadir}/nvim/runtime/colors/README.txt -%{_datadir}/nvim/runtime/colors/blue.vim -%{_datadir}/nvim/runtime/colors/darkblue.vim -%{_datadir}/nvim/runtime/colors/default.vim -%{_datadir}/nvim/runtime/colors/delek.vim -%{_datadir}/nvim/runtime/colors/desert.vim -%{_datadir}/nvim/runtime/colors/elflord.vim -%{_datadir}/nvim/runtime/colors/evening.vim -%{_datadir}/nvim/runtime/colors/habamax.vim -%{_datadir}/nvim/runtime/colors/industry.vim -%{_datadir}/nvim/runtime/colors/koehler.vim -%{_datadir}/nvim/runtime/colors/lunaperche.vim -%{_datadir}/nvim/runtime/colors/morning.vim -%{_datadir}/nvim/runtime/colors/murphy.vim -%{_datadir}/nvim/runtime/colors/pablo.vim -%{_datadir}/nvim/runtime/colors/peachpuff.vim -%{_datadir}/nvim/runtime/colors/quiet.vim -%{_datadir}/nvim/runtime/colors/ron.vim -%{_datadir}/nvim/runtime/colors/shine.vim -%{_datadir}/nvim/runtime/colors/slate.vim -%{_datadir}/nvim/runtime/colors/torte.vim -%{_datadir}/nvim/runtime/colors/zellner.vim %dir %{_datadir}/nvim/runtime/compiler +%{_datadir}/nvim/runtime/compiler/*.vim %{_datadir}/nvim/runtime/compiler/README.txt -%{_datadir}/nvim/runtime/compiler/ant.vim -%{_datadir}/nvim/runtime/compiler/bcc.vim -%{_datadir}/nvim/runtime/compiler/bdf.vim -%{_datadir}/nvim/runtime/compiler/cargo.vim -%{_datadir}/nvim/runtime/compiler/checkstyle.vim -%{_datadir}/nvim/runtime/compiler/cm3.vim -%{_datadir}/nvim/runtime/compiler/context.vim -%{_datadir}/nvim/runtime/compiler/cs.vim -%{_datadir}/nvim/runtime/compiler/csslint.vim -%{_datadir}/nvim/runtime/compiler/cucumber.vim -%{_datadir}/nvim/runtime/compiler/dart.vim -%{_datadir}/nvim/runtime/compiler/dart2js.vim -%{_datadir}/nvim/runtime/compiler/dart2native.vim -%{_datadir}/nvim/runtime/compiler/dartanalyser.vim -%{_datadir}/nvim/runtime/compiler/dartdevc.vim -%{_datadir}/nvim/runtime/compiler/dartdoc.vim -%{_datadir}/nvim/runtime/compiler/dartfmt.vim -%{_datadir}/nvim/runtime/compiler/decada.vim -%{_datadir}/nvim/runtime/compiler/dot.vim -%{_datadir}/nvim/runtime/compiler/dotnet.vim -%{_datadir}/nvim/runtime/compiler/erlang.vim -%{_datadir}/nvim/runtime/compiler/eruby.vim -%{_datadir}/nvim/runtime/compiler/eslint.vim -%{_datadir}/nvim/runtime/compiler/fbc.vim -%{_datadir}/nvim/runtime/compiler/fortran_F.vim -%{_datadir}/nvim/runtime/compiler/fortran_cv.vim -%{_datadir}/nvim/runtime/compiler/fortran_elf90.vim -%{_datadir}/nvim/runtime/compiler/fortran_g77.vim -%{_datadir}/nvim/runtime/compiler/fortran_lf95.vim -%{_datadir}/nvim/runtime/compiler/fpc.vim -%{_datadir}/nvim/runtime/compiler/g95.vim -%{_datadir}/nvim/runtime/compiler/gawk.vim -%{_datadir}/nvim/runtime/compiler/gcc.vim -%{_datadir}/nvim/runtime/compiler/gfortran.vim -%{_datadir}/nvim/runtime/compiler/ghc.vim -%{_datadir}/nvim/runtime/compiler/gjs.vim -%{_datadir}/nvim/runtime/compiler/gnat.vim -%{_datadir}/nvim/runtime/compiler/go.vim -%{_datadir}/nvim/runtime/compiler/haml.vim -%{_datadir}/nvim/runtime/compiler/hare.vim -%{_datadir}/nvim/runtime/compiler/hp_acc.vim -%{_datadir}/nvim/runtime/compiler/icc.vim -%{_datadir}/nvim/runtime/compiler/icon.vim -%{_datadir}/nvim/runtime/compiler/ifort.vim -%{_datadir}/nvim/runtime/compiler/intel.vim -%{_datadir}/nvim/runtime/compiler/irix5_c.vim -%{_datadir}/nvim/runtime/compiler/irix5_cpp.vim -%{_datadir}/nvim/runtime/compiler/javac.vim -%{_datadir}/nvim/runtime/compiler/jest.vim -%{_datadir}/nvim/runtime/compiler/jikes.vim -%{_datadir}/nvim/runtime/compiler/jjs.vim -%{_datadir}/nvim/runtime/compiler/jshint.vim -%{_datadir}/nvim/runtime/compiler/jsonlint.vim -%{_datadir}/nvim/runtime/compiler/mcs.vim -%{_datadir}/nvim/runtime/compiler/mips_c.vim -%{_datadir}/nvim/runtime/compiler/mipspro_c89.vim -%{_datadir}/nvim/runtime/compiler/mipspro_cpp.vim -%{_datadir}/nvim/runtime/compiler/modelsim_vcom.vim -%{_datadir}/nvim/runtime/compiler/msbuild.vim -%{_datadir}/nvim/runtime/compiler/msvc.vim -%{_datadir}/nvim/runtime/compiler/neato.vim -%{_datadir}/nvim/runtime/compiler/ocaml.vim -%{_datadir}/nvim/runtime/compiler/onsgmls.vim -%{_datadir}/nvim/runtime/compiler/pbx.vim -%{_datadir}/nvim/runtime/compiler/perl.vim -%{_datadir}/nvim/runtime/compiler/perlcritic.vim -%{_datadir}/nvim/runtime/compiler/php.vim -%{_datadir}/nvim/runtime/compiler/podchecker.vim -%{_datadir}/nvim/runtime/compiler/powershell.vim -%{_datadir}/nvim/runtime/compiler/pylint.vim -%{_datadir}/nvim/runtime/compiler/pyunit.vim -%{_datadir}/nvim/runtime/compiler/raco.vim -%{_datadir}/nvim/runtime/compiler/racomake.vim -%{_datadir}/nvim/runtime/compiler/racosetup.vim -%{_datadir}/nvim/runtime/compiler/racotest.vim -%{_datadir}/nvim/runtime/compiler/rake.vim -%{_datadir}/nvim/runtime/compiler/rhino.vim -%{_datadir}/nvim/runtime/compiler/rspec.vim -%{_datadir}/nvim/runtime/compiler/rst.vim -%{_datadir}/nvim/runtime/compiler/rubocop.vim -%{_datadir}/nvim/runtime/compiler/ruby.vim -%{_datadir}/nvim/runtime/compiler/rubyunit.vim -%{_datadir}/nvim/runtime/compiler/rustc.vim -%{_datadir}/nvim/runtime/compiler/sass.vim -%{_datadir}/nvim/runtime/compiler/scdoc.vim -%{_datadir}/nvim/runtime/compiler/se.vim -%{_datadir}/nvim/runtime/compiler/shellcheck.vim -%{_datadir}/nvim/runtime/compiler/sml.vim -%{_datadir}/nvim/runtime/compiler/spectral.vim -%{_datadir}/nvim/runtime/compiler/splint.vim -%{_datadir}/nvim/runtime/compiler/stack.vim -%{_datadir}/nvim/runtime/compiler/standard.vim -%{_datadir}/nvim/runtime/compiler/stylelint.vim -%{_datadir}/nvim/runtime/compiler/tcl.vim -%{_datadir}/nvim/runtime/compiler/tex.vim -%{_datadir}/nvim/runtime/compiler/tidy.vim -%{_datadir}/nvim/runtime/compiler/ts-node.vim -%{_datadir}/nvim/runtime/compiler/tsc.vim -%{_datadir}/nvim/runtime/compiler/typedoc.vim -%{_datadir}/nvim/runtime/compiler/xbuild.vim -%{_datadir}/nvim/runtime/compiler/xmllint.vim -%{_datadir}/nvim/runtime/compiler/xmlwf.vim -%{_datadir}/nvim/runtime/compiler/xo.vim -%{_datadir}/nvim/runtime/compiler/yamllint.vim -%{_datadir}/nvim/runtime/compiler/zig.vim -%{_datadir}/nvim/runtime/compiler/zig_build.vim -%{_datadir}/nvim/runtime/compiler/zig_build_exe.vim -%{_datadir}/nvim/runtime/compiler/zig_test.vim -%{_datadir}/nvim/runtime/compiler/zsh.vim %dir %{_datadir}/nvim/runtime/doc -%{_datadir}/nvim/runtime/doc/api.txt -%{_datadir}/nvim/runtime/doc/arabic.txt -%{_datadir}/nvim/runtime/doc/autocmd.txt -%{_datadir}/nvim/runtime/doc/builtin.txt -%{_datadir}/nvim/runtime/doc/change.txt -%{_datadir}/nvim/runtime/doc/channel.txt -%{_datadir}/nvim/runtime/doc/cmdline.txt -%{_datadir}/nvim/runtime/doc/debug.txt -%{_datadir}/nvim/runtime/doc/deprecated.txt -%{_datadir}/nvim/runtime/doc/dev_style.txt -%{_datadir}/nvim/runtime/doc/develop.txt -%{_datadir}/nvim/runtime/doc/diagnostic.txt -%{_datadir}/nvim/runtime/doc/diff.txt -%{_datadir}/nvim/runtime/doc/digraph.txt -%{_datadir}/nvim/runtime/doc/editorconfig.txt -%{_datadir}/nvim/runtime/doc/editing.txt -%{_datadir}/nvim/runtime/doc/eval.txt -%{_datadir}/nvim/runtime/doc/filetype.txt -%{_datadir}/nvim/runtime/doc/fold.txt -%{_datadir}/nvim/runtime/doc/ft_ada.txt -%{_datadir}/nvim/runtime/doc/ft_ps1.txt -%{_datadir}/nvim/runtime/doc/ft_raku.txt -%{_datadir}/nvim/runtime/doc/ft_rust.txt -%{_datadir}/nvim/runtime/doc/ft_sql.txt -%{_datadir}/nvim/runtime/doc/gui.txt -%{_datadir}/nvim/runtime/doc/hebrew.txt -%{_datadir}/nvim/runtime/doc/help.txt -%{_datadir}/nvim/runtime/doc/helphelp.txt -%{_datadir}/nvim/runtime/doc/if_perl.txt -%{_datadir}/nvim/runtime/doc/if_pyth.txt -%{_datadir}/nvim/runtime/doc/if_ruby.txt -%{_datadir}/nvim/runtime/doc/indent.txt -%{_datadir}/nvim/runtime/doc/index.txt -%{_datadir}/nvim/runtime/doc/insert.txt -%{_datadir}/nvim/runtime/doc/intro.txt -%{_datadir}/nvim/runtime/doc/job_control.txt -%{_datadir}/nvim/runtime/doc/lsp-extension.txt -%{_datadir}/nvim/runtime/doc/lsp.txt -%{_datadir}/nvim/runtime/doc/lua-guide.txt -%{_datadir}/nvim/runtime/doc/lua.txt -%{_datadir}/nvim/runtime/doc/luaref.txt -%{_datadir}/nvim/runtime/doc/luvref.txt -%{_datadir}/nvim/runtime/doc/map.txt -%{_datadir}/nvim/runtime/doc/mbyte.txt -%{_datadir}/nvim/runtime/doc/message.txt -%{_datadir}/nvim/runtime/doc/mlang.txt -%{_datadir}/nvim/runtime/doc/motion.txt -%{_datadir}/nvim/runtime/doc/news.txt -%{_datadir}/nvim/runtime/doc/nvim.txt -%{_datadir}/nvim/runtime/doc/nvim_terminal_emulator.txt -%{_datadir}/nvim/runtime/doc/options.txt -%{_datadir}/nvim/runtime/doc/pattern.txt -%{_datadir}/nvim/runtime/doc/pi_gzip.txt -%{_datadir}/nvim/runtime/doc/pi_health.txt -%{_datadir}/nvim/runtime/doc/pi_msgpack.txt -%{_datadir}/nvim/runtime/doc/pi_netrw.txt -%{_datadir}/nvim/runtime/doc/pi_paren.txt -%{_datadir}/nvim/runtime/doc/pi_spec.txt -%{_datadir}/nvim/runtime/doc/pi_tar.txt -%{_datadir}/nvim/runtime/doc/pi_tutor.txt -%{_datadir}/nvim/runtime/doc/pi_zip.txt -%{_datadir}/nvim/runtime/doc/provider.txt -%{_datadir}/nvim/runtime/doc/quickfix.txt -%{_datadir}/nvim/runtime/doc/quickref.txt -%{_datadir}/nvim/runtime/doc/recover.txt -%{_datadir}/nvim/runtime/doc/remote.txt -%{_datadir}/nvim/runtime/doc/remote_plugin.txt -%{_datadir}/nvim/runtime/doc/repeat.txt -%{_datadir}/nvim/runtime/doc/rileft.txt -%{_datadir}/nvim/runtime/doc/russian.txt -%{_datadir}/nvim/runtime/doc/scroll.txt -%{_datadir}/nvim/runtime/doc/sign.txt -%{_datadir}/nvim/runtime/doc/spell.txt -%{_datadir}/nvim/runtime/doc/starting.txt -%{_datadir}/nvim/runtime/doc/syntax.txt -%{_datadir}/nvim/runtime/doc/support.txt -%{_datadir}/nvim/runtime/doc/tabpage.txt +%{_datadir}/nvim/runtime/doc/*.txt %{_datadir}/nvim/runtime/doc/tags -%{_datadir}/nvim/runtime/doc/tagsrch.txt -%{_datadir}/nvim/runtime/doc/term.txt -%{_datadir}/nvim/runtime/doc/testing.txt -%{_datadir}/nvim/runtime/doc/tips.txt -%{_datadir}/nvim/runtime/doc/treesitter.txt -%{_datadir}/nvim/runtime/doc/uganda.txt -%{_datadir}/nvim/runtime/doc/ui.txt -%{_datadir}/nvim/runtime/doc/undo.txt -%{_datadir}/nvim/runtime/doc/userfunc.txt -%{_datadir}/nvim/runtime/doc/usr_01.txt -%{_datadir}/nvim/runtime/doc/usr_02.txt -%{_datadir}/nvim/runtime/doc/usr_03.txt -%{_datadir}/nvim/runtime/doc/usr_04.txt -%{_datadir}/nvim/runtime/doc/usr_05.txt -%{_datadir}/nvim/runtime/doc/usr_06.txt -%{_datadir}/nvim/runtime/doc/usr_07.txt -%{_datadir}/nvim/runtime/doc/usr_08.txt -%{_datadir}/nvim/runtime/doc/usr_09.txt -%{_datadir}/nvim/runtime/doc/usr_10.txt -%{_datadir}/nvim/runtime/doc/usr_11.txt -%{_datadir}/nvim/runtime/doc/usr_12.txt -%{_datadir}/nvim/runtime/doc/usr_20.txt -%{_datadir}/nvim/runtime/doc/usr_21.txt -%{_datadir}/nvim/runtime/doc/usr_22.txt -%{_datadir}/nvim/runtime/doc/usr_23.txt -%{_datadir}/nvim/runtime/doc/usr_24.txt -%{_datadir}/nvim/runtime/doc/usr_25.txt -%{_datadir}/nvim/runtime/doc/usr_26.txt -%{_datadir}/nvim/runtime/doc/usr_27.txt -%{_datadir}/nvim/runtime/doc/usr_28.txt -%{_datadir}/nvim/runtime/doc/usr_29.txt -%{_datadir}/nvim/runtime/doc/usr_30.txt -%{_datadir}/nvim/runtime/doc/usr_31.txt -%{_datadir}/nvim/runtime/doc/usr_32.txt -%{_datadir}/nvim/runtime/doc/usr_40.txt -%{_datadir}/nvim/runtime/doc/usr_41.txt -%{_datadir}/nvim/runtime/doc/usr_42.txt -%{_datadir}/nvim/runtime/doc/usr_43.txt -%{_datadir}/nvim/runtime/doc/usr_44.txt -%{_datadir}/nvim/runtime/doc/usr_45.txt -%{_datadir}/nvim/runtime/doc/usr_toc.txt -%{_datadir}/nvim/runtime/doc/various.txt -%{_datadir}/nvim/runtime/doc/vi_diff.txt -%{_datadir}/nvim/runtime/doc/vim_diff.txt -%{_datadir}/nvim/runtime/doc/visual.txt -%{_datadir}/nvim/runtime/doc/windows.txt %dir %{_datadir}/nvim/runtime/ftplugin -%{_datadir}/nvim/runtime/ftplugin/8th.vim -%{_datadir}/nvim/runtime/ftplugin/README.txt -%{_datadir}/nvim/runtime/ftplugin/a2ps.vim -%{_datadir}/nvim/runtime/ftplugin/aap.vim -%{_datadir}/nvim/runtime/ftplugin/abap.vim -%{_datadir}/nvim/runtime/ftplugin/abaqus.vim -%{_datadir}/nvim/runtime/ftplugin/ada.vim -%{_datadir}/nvim/runtime/ftplugin/alsaconf.vim -%{_datadir}/nvim/runtime/ftplugin/ant.vim -%{_datadir}/nvim/runtime/ftplugin/apache.vim -%{_datadir}/nvim/runtime/ftplugin/arch.vim -%{_datadir}/nvim/runtime/ftplugin/art.vim -%{_datadir}/nvim/runtime/ftplugin/asm.vim -%{_datadir}/nvim/runtime/ftplugin/aspvbs.vim -%{_datadir}/nvim/runtime/ftplugin/automake.vim -%{_datadir}/nvim/runtime/ftplugin/awk.vim -%{_datadir}/nvim/runtime/ftplugin/bash.vim -%{_datadir}/nvim/runtime/ftplugin/basic.vim -%{_datadir}/nvim/runtime/ftplugin/bdf.vim -%{_datadir}/nvim/runtime/ftplugin/bitbake.vim -%{_datadir}/nvim/runtime/ftplugin/bst.vim -%{_datadir}/nvim/runtime/ftplugin/btm.vim -%{_datadir}/nvim/runtime/ftplugin/bzl.vim -%{_datadir}/nvim/runtime/ftplugin/c.lua -%{_datadir}/nvim/runtime/ftplugin/c.vim -%{_datadir}/nvim/runtime/ftplugin/calendar.vim -%{_datadir}/nvim/runtime/ftplugin/calender.lua -%{_datadir}/nvim/runtime/ftplugin/cdrdaoconf.vim -%{_datadir}/nvim/runtime/ftplugin/cfg.vim -%{_datadir}/nvim/runtime/ftplugin/ch.vim -%{_datadir}/nvim/runtime/ftplugin/changelog.vim -%{_datadir}/nvim/runtime/ftplugin/chatito.vim -%{_datadir}/nvim/runtime/ftplugin/checkhealth.vim -%{_datadir}/nvim/runtime/ftplugin/chicken.vim -%{_datadir}/nvim/runtime/ftplugin/clojure.vim -%{_datadir}/nvim/runtime/ftplugin/cmake.vim -%{_datadir}/nvim/runtime/ftplugin/cobol.vim -%{_datadir}/nvim/runtime/ftplugin/conf.vim -%{_datadir}/nvim/runtime/ftplugin/config.vim -%{_datadir}/nvim/runtime/ftplugin/confini.vim -%{_datadir}/nvim/runtime/ftplugin/context.vim -%{_datadir}/nvim/runtime/ftplugin/cpp.vim -%{_datadir}/nvim/runtime/ftplugin/crm.vim -%{_datadir}/nvim/runtime/ftplugin/crontab.vim -%{_datadir}/nvim/runtime/ftplugin/cs.vim -%{_datadir}/nvim/runtime/ftplugin/cs.lua -%{_datadir}/nvim/runtime/ftplugin/csc.vim -%{_datadir}/nvim/runtime/ftplugin/csh.vim -%{_datadir}/nvim/runtime/ftplugin/css.lua -%{_datadir}/nvim/runtime/ftplugin/css.vim -%{_datadir}/nvim/runtime/ftplugin/cucumber.vim -%{_datadir}/nvim/runtime/ftplugin/cvsrc.vim -%{_datadir}/nvim/runtime/ftplugin/d.lua -%{_datadir}/nvim/runtime/ftplugin/debchangelog.vim -%{_datadir}/nvim/runtime/ftplugin/debcontrol.vim -%{_datadir}/nvim/runtime/ftplugin/denyhosts.vim -%{_datadir}/nvim/runtime/ftplugin/desktop.vim -%{_datadir}/nvim/runtime/ftplugin/dictconf.vim -%{_datadir}/nvim/runtime/ftplugin/dictdconf.vim -%{_datadir}/nvim/runtime/ftplugin/diff.vim -%{_datadir}/nvim/runtime/ftplugin/dircolors.vim -%{_datadir}/nvim/runtime/ftplugin/docbk.vim -%{_datadir}/nvim/runtime/ftplugin/dockerfile.vim -%{_datadir}/nvim/runtime/ftplugin/dosbatch.vim -%{_datadir}/nvim/runtime/ftplugin/dosini.vim -%{_datadir}/nvim/runtime/ftplugin/dtd.vim -%{_datadir}/nvim/runtime/ftplugin/dtrace.vim -%{_datadir}/nvim/runtime/ftplugin/dune.vim -%{_datadir}/nvim/runtime/ftplugin/eiffel.vim -%{_datadir}/nvim/runtime/ftplugin/elinks.vim -%{_datadir}/nvim/runtime/ftplugin/elixir.vim -%{_datadir}/nvim/runtime/ftplugin/elm.vim -%{_datadir}/nvim/runtime/ftplugin/erlang.vim -%{_datadir}/nvim/runtime/ftplugin/eruby.vim -%{_datadir}/nvim/runtime/ftplugin/eterm.vim -%{_datadir}/nvim/runtime/ftplugin/expect.vim -%{_datadir}/nvim/runtime/ftplugin/falcon.vim -%{_datadir}/nvim/runtime/ftplugin/fennel.vim -%{_datadir}/nvim/runtime/ftplugin/fetchmail.vim -%{_datadir}/nvim/runtime/ftplugin/fish.vim -%{_datadir}/nvim/runtime/ftplugin/flexwiki.vim -%{_datadir}/nvim/runtime/ftplugin/fortran.vim -%{_datadir}/nvim/runtime/ftplugin/fpcmake.vim -%{_datadir}/nvim/runtime/ftplugin/framescript.vim -%{_datadir}/nvim/runtime/ftplugin/freebasic.vim -%{_datadir}/nvim/runtime/ftplugin/fstab.vim -%{_datadir}/nvim/runtime/ftplugin/fvwm.vim -%{_datadir}/nvim/runtime/ftplugin/gdb.vim -%{_datadir}/nvim/runtime/ftplugin/gitattributes.vim -%{_datadir}/nvim/runtime/ftplugin/gitcommit.vim -%{_datadir}/nvim/runtime/ftplugin/gitconfig.vim -%{_datadir}/nvim/runtime/ftplugin/gitignore.vim -%{_datadir}/nvim/runtime/ftplugin/gitrebase.vim -%{_datadir}/nvim/runtime/ftplugin/gitsendemail.vim -%{_datadir}/nvim/runtime/ftplugin/go.vim -%{_datadir}/nvim/runtime/ftplugin/gpg.vim -%{_datadir}/nvim/runtime/ftplugin/gprof.vim -%{_datadir}/nvim/runtime/ftplugin/groovy.vim -%{_datadir}/nvim/runtime/ftplugin/group.vim -%{_datadir}/nvim/runtime/ftplugin/grub.vim -%{_datadir}/nvim/runtime/ftplugin/gyp.vim -%{_datadir}/nvim/runtime/ftplugin/haml.vim -%{_datadir}/nvim/runtime/ftplugin/hamster.vim -%{_datadir}/nvim/runtime/ftplugin/hare.vim -%{_datadir}/nvim/runtime/ftplugin/haskell.vim -%{_datadir}/nvim/runtime/ftplugin/heex.vim -%{_datadir}/nvim/runtime/ftplugin/help.vim -%{_datadir}/nvim/runtime/ftplugin/hgcommit.vim -%{_datadir}/nvim/runtime/ftplugin/hog.vim -%{_datadir}/nvim/runtime/ftplugin/hostconf.vim -%{_datadir}/nvim/runtime/ftplugin/hostsaccess.vim -%{_datadir}/nvim/runtime/ftplugin/html.vim -%{_datadir}/nvim/runtime/ftplugin/htmldjango.vim -%{_datadir}/nvim/runtime/ftplugin/i3config.vim -%{_datadir}/nvim/runtime/ftplugin/icon.vim -%{_datadir}/nvim/runtime/ftplugin/indent.lua -%{_datadir}/nvim/runtime/ftplugin/indent.vim -%{_datadir}/nvim/runtime/ftplugin/initex.vim -%{_datadir}/nvim/runtime/ftplugin/ishd.vim -%{_datadir}/nvim/runtime/ftplugin/j.vim -%{_datadir}/nvim/runtime/ftplugin/java.vim -%{_datadir}/nvim/runtime/ftplugin/javascript.vim -%{_datadir}/nvim/runtime/ftplugin/javascriptreact.vim -%{_datadir}/nvim/runtime/ftplugin/jproperties.vim -%{_datadir}/nvim/runtime/ftplugin/json.vim -%{_datadir}/nvim/runtime/ftplugin/jsonc.vim -%{_datadir}/nvim/runtime/ftplugin/jsonnet.vim -%{_datadir}/nvim/runtime/ftplugin/jsp.vim -%{_datadir}/nvim/runtime/ftplugin/julia.vim -%{_datadir}/nvim/runtime/ftplugin/kconfig.vim -%{_datadir}/nvim/runtime/ftplugin/kwt.vim -%{_datadir}/nvim/runtime/ftplugin/ld.vim -%{_datadir}/nvim/runtime/ftplugin/less.vim -%{_datadir}/nvim/runtime/ftplugin/lftp.vim -%{_datadir}/nvim/runtime/ftplugin/libao.vim -%{_datadir}/nvim/runtime/ftplugin/limits.vim -%{_datadir}/nvim/runtime/ftplugin/liquid.vim -%{_datadir}/nvim/runtime/ftplugin/lisp.vim -%{_datadir}/nvim/runtime/ftplugin/logcheck.vim -%{_datadir}/nvim/runtime/ftplugin/loginaccess.vim -%{_datadir}/nvim/runtime/ftplugin/logindefs.vim +%{_datadir}/nvim/runtime/ftplugin/*.vim +%{_datadir}/nvim/runtime/ftplugin/*.lua %{_datadir}/nvim/runtime/ftplugin/logtalk.dict -%{_datadir}/nvim/runtime/ftplugin/logtalk.vim -%{_datadir}/nvim/runtime/ftplugin/lprolog.vim -%{_datadir}/nvim/runtime/ftplugin/lua.vim -%{_datadir}/nvim/runtime/ftplugin/lynx.vim -%{_datadir}/nvim/runtime/ftplugin/m3build.vim -%{_datadir}/nvim/runtime/ftplugin/m3quake.vim -%{_datadir}/nvim/runtime/ftplugin/m4.vim -%{_datadir}/nvim/runtime/ftplugin/mail.vim -%{_datadir}/nvim/runtime/ftplugin/mailaliases.vim -%{_datadir}/nvim/runtime/ftplugin/mailcap.vim -%{_datadir}/nvim/runtime/ftplugin/make.vim -%{_datadir}/nvim/runtime/ftplugin/man.vim -%{_datadir}/nvim/runtime/ftplugin/manconf.vim -%{_datadir}/nvim/runtime/ftplugin/markdown.vim -%{_datadir}/nvim/runtime/ftplugin/masm.vim -%{_datadir}/nvim/runtime/ftplugin/matlab.vim -%{_datadir}/nvim/runtime/ftplugin/mermaid.vim -%{_datadir}/nvim/runtime/ftplugin/meson.vim -%{_datadir}/nvim/runtime/ftplugin/mf.vim -%{_datadir}/nvim/runtime/ftplugin/mma.vim -%{_datadir}/nvim/runtime/ftplugin/modconf.vim -%{_datadir}/nvim/runtime/ftplugin/modula2.vim -%{_datadir}/nvim/runtime/ftplugin/modula3.vim -%{_datadir}/nvim/runtime/ftplugin/mp.vim -%{_datadir}/nvim/runtime/ftplugin/mplayerconf.vim -%{_datadir}/nvim/runtime/ftplugin/mrxvtrc.vim -%{_datadir}/nvim/runtime/ftplugin/msmessages.vim -%{_datadir}/nvim/runtime/ftplugin/muttrc.vim -%{_datadir}/nvim/runtime/ftplugin/nanorc.vim -%{_datadir}/nvim/runtime/ftplugin/neomuttrc.vim -%{_datadir}/nvim/runtime/ftplugin/netrc.vim -%{_datadir}/nvim/runtime/ftplugin/nginx.vim -%{_datadir}/nvim/runtime/ftplugin/nroff.vim -%{_datadir}/nvim/runtime/ftplugin/nsis.vim -%{_datadir}/nvim/runtime/ftplugin/objc.vim -%{_datadir}/nvim/runtime/ftplugin/obse.vim -%{_datadir}/nvim/runtime/ftplugin/ocaml.vim -%{_datadir}/nvim/runtime/ftplugin/occam.vim -%{_datadir}/nvim/runtime/ftplugin/octave.vim -%{_datadir}/nvim/runtime/ftplugin/openvpn.vim -%{_datadir}/nvim/runtime/ftplugin/pamconf.vim -%{_datadir}/nvim/runtime/ftplugin/pascal.vim -%{_datadir}/nvim/runtime/ftplugin/passwd.vim -%{_datadir}/nvim/runtime/ftplugin/pbtxt.vim -%{_datadir}/nvim/runtime/ftplugin/pdf.vim -%{_datadir}/nvim/runtime/ftplugin/perl.vim -%{_datadir}/nvim/runtime/ftplugin/php.vim -%{_datadir}/nvim/runtime/ftplugin/pinfo.vim -%{_datadir}/nvim/runtime/ftplugin/plaintex.vim -%{_datadir}/nvim/runtime/ftplugin/pod.vim -%{_datadir}/nvim/runtime/ftplugin/poefilter.vim -%{_datadir}/nvim/runtime/ftplugin/poke.vim -%{_datadir}/nvim/runtime/ftplugin/postscr.vim -%{_datadir}/nvim/runtime/ftplugin/procmail.vim -%{_datadir}/nvim/runtime/ftplugin/prolog.vim -%{_datadir}/nvim/runtime/ftplugin/protocols.vim -%{_datadir}/nvim/runtime/ftplugin/ps1.vim -%{_datadir}/nvim/runtime/ftplugin/ps1xml.vim -%{_datadir}/nvim/runtime/ftplugin/pyrex.vim -%{_datadir}/nvim/runtime/ftplugin/python.vim -%{_datadir}/nvim/runtime/ftplugin/qb64.vim -%{_datadir}/nvim/runtime/ftplugin/qf.vim -%{_datadir}/nvim/runtime/ftplugin/quake.vim -%{_datadir}/nvim/runtime/ftplugin/quarto.vim -%{_datadir}/nvim/runtime/ftplugin/query.lua -%{_datadir}/nvim/runtime/ftplugin/r.vim -%{_datadir}/nvim/runtime/ftplugin/racc.vim -%{_datadir}/nvim/runtime/ftplugin/racket.vim -%{_datadir}/nvim/runtime/ftplugin/raku.vim -%{_datadir}/nvim/runtime/ftplugin/readline.vim -%{_datadir}/nvim/runtime/ftplugin/registry.vim -%{_datadir}/nvim/runtime/ftplugin/reva.vim -%{_datadir}/nvim/runtime/ftplugin/rhelp.vim -%{_datadir}/nvim/runtime/ftplugin/rmd.vim -%{_datadir}/nvim/runtime/ftplugin/rnc.vim -%{_datadir}/nvim/runtime/ftplugin/rnoweb.vim -%{_datadir}/nvim/runtime/ftplugin/routeros.vim -%{_datadir}/nvim/runtime/ftplugin/rpl.vim -%{_datadir}/nvim/runtime/ftplugin/rrst.vim -%{_datadir}/nvim/runtime/ftplugin/rst.vim -%{_datadir}/nvim/runtime/ftplugin/ruby.vim -%{_datadir}/nvim/runtime/ftplugin/rust.vim -%{_datadir}/nvim/runtime/ftplugin/sass.vim -%{_datadir}/nvim/runtime/ftplugin/sbt.vim -%{_datadir}/nvim/runtime/ftplugin/scala.vim -%{_datadir}/nvim/runtime/ftplugin/scdoc.vim -%{_datadir}/nvim/runtime/ftplugin/scheme.vim -%{_datadir}/nvim/runtime/ftplugin/screen.vim -%{_datadir}/nvim/runtime/ftplugin/scss.vim -%{_datadir}/nvim/runtime/ftplugin/sensors.vim -%{_datadir}/nvim/runtime/ftplugin/services.vim -%{_datadir}/nvim/runtime/ftplugin/setserial.vim -%{_datadir}/nvim/runtime/ftplugin/sexplib.vim -%{_datadir}/nvim/runtime/ftplugin/sgml.vim -%{_datadir}/nvim/runtime/ftplugin/sh.vim -%{_datadir}/nvim/runtime/ftplugin/shada.vim -%{_datadir}/nvim/runtime/ftplugin/sieve.vim -%{_datadir}/nvim/runtime/ftplugin/slpconf.vim -%{_datadir}/nvim/runtime/ftplugin/slpreg.vim -%{_datadir}/nvim/runtime/ftplugin/slpspi.vim -%{_datadir}/nvim/runtime/ftplugin/solution.vim -%{_datadir}/nvim/runtime/ftplugin/spec.vim -%{_datadir}/nvim/runtime/ftplugin/sql.vim -%{_datadir}/nvim/runtime/ftplugin/ssa.vim -%{_datadir}/nvim/runtime/ftplugin/sshconfig.vim -%{_datadir}/nvim/runtime/ftplugin/sudoers.vim -%{_datadir}/nvim/runtime/ftplugin/svg.vim -%{_datadir}/nvim/runtime/ftplugin/swayconfig.vim -%{_datadir}/nvim/runtime/ftplugin/swift.vim -%{_datadir}/nvim/runtime/ftplugin/swiftgyb.vim -%{_datadir}/nvim/runtime/ftplugin/sysctl.vim -%{_datadir}/nvim/runtime/ftplugin/systemd.vim -%{_datadir}/nvim/runtime/ftplugin/systemverilog.vim -%{_datadir}/nvim/runtime/ftplugin/tap.vim -%{_datadir}/nvim/runtime/ftplugin/tcl.vim -%{_datadir}/nvim/runtime/ftplugin/tcsh.vim -%{_datadir}/nvim/runtime/ftplugin/terminfo.vim -%{_datadir}/nvim/runtime/ftplugin/tex.vim -%{_datadir}/nvim/runtime/ftplugin/text.vim -%{_datadir}/nvim/runtime/ftplugin/tidy.vim -%{_datadir}/nvim/runtime/ftplugin/tmux.vim -%{_datadir}/nvim/runtime/ftplugin/toml.vim -%{_datadir}/nvim/runtime/ftplugin/treetop.vim -%{_datadir}/nvim/runtime/ftplugin/tt2html.vim -%{_datadir}/nvim/runtime/ftplugin/tutor.vim -%{_datadir}/nvim/runtime/ftplugin/typescript.vim -%{_datadir}/nvim/runtime/ftplugin/typescriptreact.vim -%{_datadir}/nvim/runtime/ftplugin/udevconf.vim -%{_datadir}/nvim/runtime/ftplugin/udevperm.vim -%{_datadir}/nvim/runtime/ftplugin/udevrules.vim -%{_datadir}/nvim/runtime/ftplugin/updatedb.vim -%{_datadir}/nvim/runtime/ftplugin/vb.vim -%{_datadir}/nvim/runtime/ftplugin/vdf.vim -%{_datadir}/nvim/runtime/ftplugin/verilog.vim -%{_datadir}/nvim/runtime/ftplugin/vhdl.vim -%{_datadir}/nvim/runtime/ftplugin/vim.vim -%{_datadir}/nvim/runtime/ftplugin/vroom.vim -%{_datadir}/nvim/runtime/ftplugin/vue.vim -%{_datadir}/nvim/runtime/ftplugin/wast.vim -%{_datadir}/nvim/runtime/ftplugin/wget.vim -%{_datadir}/nvim/runtime/ftplugin/wget2.vim -%{_datadir}/nvim/runtime/ftplugin/xdefaults.lua -%{_datadir}/nvim/runtime/ftplugin/xdefaults.vim -%{_datadir}/nvim/runtime/ftplugin/xf86conf.vim -%{_datadir}/nvim/runtime/ftplugin/xhtml.vim -%{_datadir}/nvim/runtime/ftplugin/xinetd.vim -%{_datadir}/nvim/runtime/ftplugin/xml.vim -%{_datadir}/nvim/runtime/ftplugin/xmodmap.vim -%{_datadir}/nvim/runtime/ftplugin/xs.vim -%{_datadir}/nvim/runtime/ftplugin/xsd.vim -%{_datadir}/nvim/runtime/ftplugin/xslt.vim -%{_datadir}/nvim/runtime/ftplugin/yaml.vim -%{_datadir}/nvim/runtime/ftplugin/zig.vim -%{_datadir}/nvim/runtime/ftplugin/zimbu.vim -%{_datadir}/nvim/runtime/ftplugin/zsh.vim +%{_datadir}/nvim/runtime/ftplugin/README.txt %dir %{_datadir}/nvim/runtime/indent %{_datadir}/nvim/runtime/indent/Makefile %{_datadir}/nvim/runtime/indent/README.txt -%{_datadir}/nvim/runtime/indent/aap.vim -%{_datadir}/nvim/runtime/indent/ada.vim -%{_datadir}/nvim/runtime/indent/ant.vim -%{_datadir}/nvim/runtime/indent/automake.vim -%{_datadir}/nvim/runtime/indent/awk.vim -%{_datadir}/nvim/runtime/indent/bash.vim -%{_datadir}/nvim/runtime/indent/basic.vim -%{_datadir}/nvim/runtime/indent/bib.vim -%{_datadir}/nvim/runtime/indent/bitbake.vim -%{_datadir}/nvim/runtime/indent/bst.vim -%{_datadir}/nvim/runtime/indent/bzl.vim -%{_datadir}/nvim/runtime/indent/c.vim -%{_datadir}/nvim/runtime/indent/cdl.vim -%{_datadir}/nvim/runtime/indent/ch.vim -%{_datadir}/nvim/runtime/indent/chaiscript.vim -%{_datadir}/nvim/runtime/indent/changelog.vim -%{_datadir}/nvim/runtime/indent/chatito.vim -%{_datadir}/nvim/runtime/indent/clojure.vim -%{_datadir}/nvim/runtime/indent/cmake.vim -%{_datadir}/nvim/runtime/indent/cobol.vim -%{_datadir}/nvim/runtime/indent/config.vim -%{_datadir}/nvim/runtime/indent/context.vim -%{_datadir}/nvim/runtime/indent/cpp.vim -%{_datadir}/nvim/runtime/indent/cs.vim -%{_datadir}/nvim/runtime/indent/css.vim -%{_datadir}/nvim/runtime/indent/cucumber.vim -%{_datadir}/nvim/runtime/indent/cuda.vim -%{_datadir}/nvim/runtime/indent/d.vim -%{_datadir}/nvim/runtime/indent/dictconf.vim -%{_datadir}/nvim/runtime/indent/dictdconf.vim -%{_datadir}/nvim/runtime/indent/docbk.vim -%{_datadir}/nvim/runtime/indent/dosbatch.vim -%{_datadir}/nvim/runtime/indent/dtd.vim -%{_datadir}/nvim/runtime/indent/dtrace.vim -%{_datadir}/nvim/runtime/indent/dune.vim -%{_datadir}/nvim/runtime/indent/dylan.vim -%{_datadir}/nvim/runtime/indent/eiffel.vim -%{_datadir}/nvim/runtime/indent/elm.vim -%{_datadir}/nvim/runtime/indent/erlang.vim -%{_datadir}/nvim/runtime/indent/eruby.vim -%{_datadir}/nvim/runtime/indent/eterm.vim -%{_datadir}/nvim/runtime/indent/expect.vim -%{_datadir}/nvim/runtime/indent/falcon.vim -%{_datadir}/nvim/runtime/indent/fennel.vim -%{_datadir}/nvim/runtime/indent/fish.vim -%{_datadir}/nvim/runtime/indent/fortran.vim -%{_datadir}/nvim/runtime/indent/framescript.vim -%{_datadir}/nvim/runtime/indent/freebasic.vim -%{_datadir}/nvim/runtime/indent/gitconfig.vim -%{_datadir}/nvim/runtime/indent/gitolite.vim -%{_datadir}/nvim/runtime/indent/go.vim -%{_datadir}/nvim/runtime/indent/gyp.vim -%{_datadir}/nvim/runtime/indent/haml.vim -%{_datadir}/nvim/runtime/indent/hamster.vim -%{_datadir}/nvim/runtime/indent/hare.vim -%{_datadir}/nvim/runtime/indent/hog.vim -%{_datadir}/nvim/runtime/indent/html.vim -%{_datadir}/nvim/runtime/indent/htmldjango.vim -%{_datadir}/nvim/runtime/indent/idlang.vim -%{_datadir}/nvim/runtime/indent/ishd.vim -%{_datadir}/nvim/runtime/indent/j.vim -%{_datadir}/nvim/runtime/indent/java.vim -%{_datadir}/nvim/runtime/indent/javascript.vim -%{_datadir}/nvim/runtime/indent/javascriptreact.vim -%{_datadir}/nvim/runtime/indent/json.vim -%{_datadir}/nvim/runtime/indent/jsonc.vim -%{_datadir}/nvim/runtime/indent/jsp.vim -%{_datadir}/nvim/runtime/indent/julia.vim -%{_datadir}/nvim/runtime/indent/krl.vim -%{_datadir}/nvim/runtime/indent/ld.vim -%{_datadir}/nvim/runtime/indent/less.vim -%{_datadir}/nvim/runtime/indent/lifelines.vim -%{_datadir}/nvim/runtime/indent/liquid.vim -%{_datadir}/nvim/runtime/indent/lisp.vim -%{_datadir}/nvim/runtime/indent/logtalk.vim -%{_datadir}/nvim/runtime/indent/lua.vim -%{_datadir}/nvim/runtime/indent/mail.vim -%{_datadir}/nvim/runtime/indent/make.vim -%{_datadir}/nvim/runtime/indent/matlab.vim -%{_datadir}/nvim/runtime/indent/meson.vim -%{_datadir}/nvim/runtime/indent/mf.vim -%{_datadir}/nvim/runtime/indent/mma.vim -%{_datadir}/nvim/runtime/indent/mp.vim -%{_datadir}/nvim/runtime/indent/nginx.vim -%{_datadir}/nvim/runtime/indent/nsis.vim -%{_datadir}/nvim/runtime/indent/objc.vim -%{_datadir}/nvim/runtime/indent/obse.vim -%{_datadir}/nvim/runtime/indent/ocaml.vim -%{_datadir}/nvim/runtime/indent/occam.vim -%{_datadir}/nvim/runtime/indent/pascal.vim -%{_datadir}/nvim/runtime/indent/perl.vim -%{_datadir}/nvim/runtime/indent/php.vim -%{_datadir}/nvim/runtime/indent/postscr.vim -%{_datadir}/nvim/runtime/indent/pov.vim -%{_datadir}/nvim/runtime/indent/prolog.vim -%{_datadir}/nvim/runtime/indent/ps1.vim -%{_datadir}/nvim/runtime/indent/pyrex.vim -%{_datadir}/nvim/runtime/indent/python.vim -%{_datadir}/nvim/runtime/indent/qb64.vim -%{_datadir}/nvim/runtime/indent/quarto.vim -%{_datadir}/nvim/runtime/indent/query.lua -%{_datadir}/nvim/runtime/indent/r.vim -%{_datadir}/nvim/runtime/indent/racket.vim -%{_datadir}/nvim/runtime/indent/raku.vim -%{_datadir}/nvim/runtime/indent/raml.vim -%{_datadir}/nvim/runtime/indent/readline.vim -%{_datadir}/nvim/runtime/indent/rhelp.vim -%{_datadir}/nvim/runtime/indent/rmd.vim -%{_datadir}/nvim/runtime/indent/rnoweb.vim -%{_datadir}/nvim/runtime/indent/rpl.vim -%{_datadir}/nvim/runtime/indent/rrst.vim -%{_datadir}/nvim/runtime/indent/rst.vim -%{_datadir}/nvim/runtime/indent/ruby.vim -%{_datadir}/nvim/runtime/indent/rust.vim -%{_datadir}/nvim/runtime/indent/sas.vim -%{_datadir}/nvim/runtime/indent/sass.vim -%{_datadir}/nvim/runtime/indent/scala.vim -%{_datadir}/nvim/runtime/indent/scheme.vim -%{_datadir}/nvim/runtime/indent/scss.vim -%{_datadir}/nvim/runtime/indent/sdl.vim -%{_datadir}/nvim/runtime/indent/sh.vim -%{_datadir}/nvim/runtime/indent/sml.vim -%{_datadir}/nvim/runtime/indent/solidity.vim -%{_datadir}/nvim/runtime/indent/sql.vim -%{_datadir}/nvim/runtime/indent/sqlanywhere.vim -%{_datadir}/nvim/runtime/indent/sshconfig.vim -%{_datadir}/nvim/runtime/indent/systemverilog.vim -%{_datadir}/nvim/runtime/indent/tcl.vim -%{_datadir}/nvim/runtime/indent/tcsh.vim -%{_datadir}/nvim/runtime/indent/teraterm.vim -%{_datadir}/nvim/runtime/indent/tex.vim -%{_datadir}/nvim/runtime/indent/tf.vim -%{_datadir}/nvim/runtime/indent/tilde.vim -%{_datadir}/nvim/runtime/indent/treetop.vim -%{_datadir}/nvim/runtime/indent/typescript.vim -%{_datadir}/nvim/runtime/indent/vb.vim -%{_datadir}/nvim/runtime/indent/verilog.vim -%{_datadir}/nvim/runtime/indent/vhdl.vim -%{_datadir}/nvim/runtime/indent/vim.vim -%{_datadir}/nvim/runtime/indent/vroom.vim -%{_datadir}/nvim/runtime/indent/vue.vim -%{_datadir}/nvim/runtime/indent/wast.vim -%{_datadir}/nvim/runtime/indent/xf86conf.vim -%{_datadir}/nvim/runtime/indent/xhtml.vim -%{_datadir}/nvim/runtime/indent/xinetd.vim -%{_datadir}/nvim/runtime/indent/xml.vim -%{_datadir}/nvim/runtime/indent/xsd.vim -%{_datadir}/nvim/runtime/indent/xslt.vim -%{_datadir}/nvim/runtime/indent/yacc.vim -%{_datadir}/nvim/runtime/indent/yaml.vim -%{_datadir}/nvim/runtime/indent/zig.vim -%{_datadir}/nvim/runtime/indent/zimbu.vim -%{_datadir}/nvim/runtime/indent/zsh.vim +%{_datadir}/nvim/runtime/indent/*.lua +%{_datadir}/nvim/runtime/indent/*.vim %dir %{_datadir}/nvim/runtime/indent/testdir/ -%{_datadir}/nvim/runtime/indent/testdir/README.txt -%{_datadir}/nvim/runtime/indent/testdir/bitbake.in -%{_datadir}/nvim/runtime/indent/testdir/bitbake.ok +%{_datadir}/nvim/runtime/indent/testdir/README.txt +%{_datadir}/nvim/runtime/indent/testdir/bitbake.in +%{_datadir}/nvim/runtime/indent/testdir/bitbake.ok +%{_datadir}/nvim/runtime/indent/testdir/dts.in +%{_datadir}/nvim/runtime/indent/testdir/dts.ok %{_datadir}/nvim/runtime/indent/testdir/html.in %{_datadir}/nvim/runtime/indent/testdir/html.ok %{_datadir}/nvim/runtime/indent/testdir/krl.in @@ -980,6 +224,8 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/testdir/matlab.ok %{_datadir}/nvim/runtime/indent/testdir/python.in %{_datadir}/nvim/runtime/indent/testdir/python.ok +%{_datadir}/nvim/runtime/indent/testdir/rapid.in +%{_datadir}/nvim/runtime/indent/testdir/rapid.ok %{_datadir}/nvim/runtime/indent/testdir/runtest.vim %{_datadir}/nvim/runtime/indent/testdir/sshconfig.in %{_datadir}/nvim/runtime/indent/testdir/sshconfig.ok @@ -995,161 +241,64 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/testdir/yaml.ok %dir %{_datadir}/nvim/runtime/keymap +%{_datadir}/nvim/runtime/keymap/*.vim %{_datadir}/nvim/runtime/keymap/README.txt -%{_datadir}/nvim/runtime/keymap/accents.vim -%{_datadir}/nvim/runtime/keymap/arabic.vim -%{_datadir}/nvim/runtime/keymap/arabic_utf-8.vim -%{_datadir}/nvim/runtime/keymap/armenian-eastern_utf-8.vim -%{_datadir}/nvim/runtime/keymap/armenian-western_utf-8.vim -%{_datadir}/nvim/runtime/keymap/belarusian-jcuken.vim -%{_datadir}/nvim/runtime/keymap/bulgarian-bds.vim -%{_datadir}/nvim/runtime/keymap/bulgarian-phonetic.vim -%{_datadir}/nvim/runtime/keymap/canfr-win.vim -%{_datadir}/nvim/runtime/keymap/croatian.vim -%{_datadir}/nvim/runtime/keymap/croatian_cp1250.vim -%{_datadir}/nvim/runtime/keymap/croatian_iso-8859-2.vim -%{_datadir}/nvim/runtime/keymap/croatian_utf-8.vim -%{_datadir}/nvim/runtime/keymap/czech.vim -%{_datadir}/nvim/runtime/keymap/czech_utf-8.vim -%{_datadir}/nvim/runtime/keymap/dvorak.vim -%{_datadir}/nvim/runtime/keymap/esperanto.vim -%{_datadir}/nvim/runtime/keymap/esperanto_utf-8.vim -%{_datadir}/nvim/runtime/keymap/french-azerty.vim -%{_datadir}/nvim/runtime/keymap/german-qwertz.vim -%{_datadir}/nvim/runtime/keymap/greek.vim -%{_datadir}/nvim/runtime/keymap/greek_cp1253.vim -%{_datadir}/nvim/runtime/keymap/greek_cp737.vim -%{_datadir}/nvim/runtime/keymap/greek_iso-8859-7.vim -%{_datadir}/nvim/runtime/keymap/greek_utf-8.vim -%{_datadir}/nvim/runtime/keymap/hebrew.vim -%{_datadir}/nvim/runtime/keymap/hebrew_cp1255.vim -%{_datadir}/nvim/runtime/keymap/hebrew_iso-8859-8.vim -%{_datadir}/nvim/runtime/keymap/hebrew_utf-8.vim -%{_datadir}/nvim/runtime/keymap/hebrewp.vim -%{_datadir}/nvim/runtime/keymap/hebrewp_cp1255.vim -%{_datadir}/nvim/runtime/keymap/hebrewp_iso-8859-8.vim -%{_datadir}/nvim/runtime/keymap/hebrewp_utf-8.vim -%{_datadir}/nvim/runtime/keymap/kana.vim -%{_datadir}/nvim/runtime/keymap/kazakh-jcuken.vim -%{_datadir}/nvim/runtime/keymap/korean-dubeolsik_utf-8.vim -%{_datadir}/nvim/runtime/keymap/korean.vim -%{_datadir}/nvim/runtime/keymap/lithuanian-baltic.vim -%{_datadir}/nvim/runtime/keymap/magyar_utf-8.vim -%{_datadir}/nvim/runtime/keymap/mongolian_utf-8.vim -%{_datadir}/nvim/runtime/keymap/oldturkic-orkhon_utf-8.vim -%{_datadir}/nvim/runtime/keymap/oldturkic-yenisei_utf-8.vim -%{_datadir}/nvim/runtime/keymap/persian-iranian_utf-8.vim -%{_datadir}/nvim/runtime/keymap/persian.vim -%{_datadir}/nvim/runtime/keymap/pinyin.vim -%{_datadir}/nvim/runtime/keymap/polish-slash.vim -%{_datadir}/nvim/runtime/keymap/polish-slash_cp1250.vim -%{_datadir}/nvim/runtime/keymap/polish-slash_cp852.vim -%{_datadir}/nvim/runtime/keymap/polish-slash_iso-8859-2.vim -%{_datadir}/nvim/runtime/keymap/polish-slash_utf-8.vim -%{_datadir}/nvim/runtime/keymap/russian-dvorak.vim -%{_datadir}/nvim/runtime/keymap/russian-jcuken.vim -%{_datadir}/nvim/runtime/keymap/russian-jcukenmac.vim -%{_datadir}/nvim/runtime/keymap/russian-jcukenwin.vim -%{_datadir}/nvim/runtime/keymap/russian-jcukenwintype.vim -%{_datadir}/nvim/runtime/keymap/russian-typograph.vim -%{_datadir}/nvim/runtime/keymap/russian-yawerty.vim -%{_datadir}/nvim/runtime/keymap/serbian-latin.vim -%{_datadir}/nvim/runtime/keymap/serbian-latin_utf-8.vim -%{_datadir}/nvim/runtime/keymap/serbian.vim -%{_datadir}/nvim/runtime/keymap/serbian_cp1250.vim -%{_datadir}/nvim/runtime/keymap/serbian_cp1251.vim -%{_datadir}/nvim/runtime/keymap/serbian_iso-8859-2.vim -%{_datadir}/nvim/runtime/keymap/serbian_iso-8859-5.vim -%{_datadir}/nvim/runtime/keymap/serbian_utf-8.vim -%{_datadir}/nvim/runtime/keymap/sinhala-phonetic_utf-8.vim -%{_datadir}/nvim/runtime/keymap/sinhala.vim -%{_datadir}/nvim/runtime/keymap/slovak.vim -%{_datadir}/nvim/runtime/keymap/slovak_cp1250.vim -%{_datadir}/nvim/runtime/keymap/slovak_iso-8859-2.vim -%{_datadir}/nvim/runtime/keymap/slovak_utf-8.vim -%{_datadir}/nvim/runtime/keymap/tamil_tscii.vim -%{_datadir}/nvim/runtime/keymap/thaana-phonetic_utf-8.vim -%{_datadir}/nvim/runtime/keymap/thaana.vim -%{_datadir}/nvim/runtime/keymap/turkish-f.vim -%{_datadir}/nvim/runtime/keymap/turkish-q.vim -%{_datadir}/nvim/runtime/keymap/ukrainian-dvorak.vim -%{_datadir}/nvim/runtime/keymap/ukrainian-jcuken.vim -%{_datadir}/nvim/runtime/keymap/vietnamese-telex_utf-8.vim -%{_datadir}/nvim/runtime/keymap/vietnamese-viqr_utf-8.vim -%{_datadir}/nvim/runtime/keymap/vietnamese-vni_utf-8.vim %dir %{_datadir}/nvim/runtime/lua -%{_datadir}/nvim/runtime/lua/_vim9script.lua -%{_datadir}/nvim/runtime/lua/editorconfig.lua -%{_datadir}/nvim/runtime/lua/man.lua +%{_datadir}/nvim/runtime/lua/*.lua %dir %{_datadir}/nvim/runtime/lua/nvim %{_datadir}/nvim/runtime/lua/nvim/health.lua +%dir %{_datadir}/nvim/runtime/lua/provider + +%dir %{_datadir}/nvim/runtime/lua/provider/clipboard +%{_datadir}/nvim/runtime/lua/provider/clipboard/*.lua + +%dir %{_datadir}/nvim/runtime/lua/provider/node +%{_datadir}/nvim/runtime/lua/provider/node/*.lua + +%dir %{_datadir}/nvim/runtime/lua/provider/perl +%{_datadir}/nvim/runtime/lua/provider/perl/*.lua + +%dir %{_datadir}/nvim/runtime/lua/provider/python +%{_datadir}/nvim/runtime/lua/provider/python/*.lua + +%dir %{_datadir}/nvim/runtime/lua/provider/ruby +%{_datadir}/nvim/runtime/lua/provider/ruby/*.lua + %dir %{_datadir}/nvim/runtime/lua/vim -%{_datadir}/nvim/runtime/lua/vim/F.lua -%{_datadir}/nvim/runtime/lua/vim/_editor.lua -%{_datadir}/nvim/runtime/lua/vim/_init_packages.lua -%{_datadir}/nvim/runtime/lua/vim/_inspector.lua -%{_datadir}/nvim/runtime/lua/vim/_options.lua -%{_datadir}/nvim/runtime/lua/vim/_watch.lua -%{_datadir}/nvim/runtime/lua/vim/diagnostic.lua -%{_datadir}/nvim/runtime/lua/vim/filetype.lua -%{_datadir}/nvim/runtime/lua/vim/fs.lua -%{_datadir}/nvim/runtime/lua/vim/health.lua -%{_datadir}/nvim/runtime/lua/vim/highlight.lua -%{_datadir}/nvim/runtime/lua/vim/inspect.lua -%{_datadir}/nvim/runtime/lua/vim/keymap.lua -%{_datadir}/nvim/runtime/lua/vim/loader.lua -%{_datadir}/nvim/runtime/lua/vim/lsp.lua -%{_datadir}/nvim/runtime/lua/vim/secure.lua -%{_datadir}/nvim/runtime/lua/vim/shared.lua -%{_datadir}/nvim/runtime/lua/vim/treesitter.lua -%{_datadir}/nvim/runtime/lua/vim/ui.lua -%{_datadir}/nvim/runtime/lua/vim/uri.lua -%{_datadir}/nvim/runtime/lua/vim/version.lua +%{_datadir}/nvim/runtime/lua/vim/*.lua -%dir %{_datadir}/nvim/runtime/lua/vim/filetype/ -%{_datadir}/nvim/runtime/lua/vim/filetype/detect.lua -%{_datadir}/nvim/runtime/lua/vim/filetype/options.lua +%dir %{_datadir}/nvim/runtime/lua/vim/_meta +%{_datadir}/nvim/runtime/lua/vim/_meta/*.lua -%dir %{_datadir}/nvim/runtime/lua/vim/lsp/ -%{_datadir}/nvim/runtime/lua/vim/lsp/_snippet.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/_watchfiles.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/buf.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/codelens.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/diagnostic.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/handlers.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/health.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/log.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/protocol.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/rpc.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/semantic_tokens.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/sync.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/tagfunc.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/types.lua -%{_datadir}/nvim/runtime/lua/vim/lsp/util.lua +%dir %{_datadir}/nvim/runtime/lua/vim/filetype +%{_datadir}/nvim/runtime/lua/vim/filetype/*.lua -%dir %{_datadir}/nvim/runtime/lua/vim/treesitter/ -%{_datadir}/nvim/runtime/lua/vim/treesitter/_fold.lua -%{_datadir}/nvim/runtime/lua/vim/treesitter/_meta.lua -%{_datadir}/nvim/runtime/lua/vim/treesitter/_range.lua -%{_datadir}/nvim/runtime/lua/vim/treesitter/health.lua -%{_datadir}/nvim/runtime/lua/vim/treesitter/highlighter.lua -%{_datadir}/nvim/runtime/lua/vim/treesitter/language.lua -%{_datadir}/nvim/runtime/lua/vim/treesitter/languagetree.lua -%{_datadir}/nvim/runtime/lua/vim/treesitter/playground.lua -%{_datadir}/nvim/runtime/lua/vim/treesitter/query.lua +%dir %{_datadir}/nvim/runtime/lua/vim/func +%{_datadir}/nvim/runtime/lua/vim/func/*.lua + +%dir %{_datadir}/nvim/runtime/lua/vim/lsp +%{_datadir}/nvim/runtime/lua/vim/lsp/*.lua + +%dir %{_datadir}/nvim/runtime/lua/vim/lsp/_meta +%{_datadir}/nvim/runtime/lua/vim/lsp/_meta/*.lua + +%dir %{_datadir}/nvim/runtime/lua/vim/provider +%{_datadir}/nvim/runtime/lua/vim/provider/*.lua + +%dir %{_datadir}/nvim/runtime/lua/vim/treesitter +%{_datadir}/nvim/runtime/lua/vim/treesitter/*.lua + +%dir %{_datadir}/nvim/runtime/lua/vim/ui +%dir %{_datadir}/nvim/runtime/lua/vim/ui/clipboard +%{_datadir}/nvim/runtime/lua/vim/ui/clipboard/*.lua %dir %{_datadir}/nvim/runtime/macros -%{_datadir}/nvim/runtime/macros/editexisting.vim -%{_datadir}/nvim/runtime/macros/justify.vim +%{_datadir}/nvim/runtime/macros/*.vim %{_datadir}/nvim/runtime/macros/less.bat %{_datadir}/nvim/runtime/macros/less.sh -%{_datadir}/nvim/runtime/macros/less.vim -%{_datadir}/nvim/runtime/macros/matchit.vim -%{_datadir}/nvim/runtime/macros/shellmenu.vim -%{_datadir}/nvim/runtime/macros/swapmous.vim %dir %{_datadir}/nvim/runtime/pack %dir %{_datadir}/nvim/runtime/pack/dist @@ -1157,788 +306,90 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/pack/dist/opt/cfilter %dir %{_datadir}/nvim/runtime/pack/dist/opt/cfilter/plugin -%{_datadir}/nvim/runtime/pack/dist/opt/cfilter/plugin/cfilter.lua +%{_datadir}/nvim/runtime/pack/dist/opt/cfilter/plugin/*.lua %dir %{_datadir}/nvim/runtime/pack/dist/opt/justify %dir %{_datadir}/nvim/runtime/pack/dist/opt/justify/plugin -%{_datadir}/nvim/runtime/pack/dist/opt/justify/plugin/justify.vim +%{_datadir}/nvim/runtime/pack/dist/opt/justify/plugin/*.vim %dir %{_datadir}/nvim/runtime/pack/dist/opt/shellmenu %dir %{_datadir}/nvim/runtime/pack/dist/opt/shellmenu/plugin -%{_datadir}/nvim/runtime/pack/dist/opt/shellmenu/plugin/shellmenu.vim +%{_datadir}/nvim/runtime/pack/dist/opt/shellmenu/plugin/*.vim %dir %{_datadir}/nvim/runtime/pack/dist/opt/matchit %dir %{_datadir}/nvim/runtime/pack/dist/opt/matchit/autoload -%{_datadir}/nvim/runtime/pack/dist/opt/matchit/autoload/matchit.vim +%{_datadir}/nvim/runtime/pack/dist/opt/matchit/autoload/*.vim %dir %{_datadir}/nvim/runtime/pack/dist/opt/matchit/doc %{_datadir}/nvim/runtime/pack/dist/opt/matchit/doc/matchit.txt %{_datadir}/nvim/runtime/pack/dist/opt/matchit/doc/tags %dir %{_datadir}/nvim/runtime/pack/dist/opt/matchit/plugin -%{_datadir}/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim +%{_datadir}/nvim/runtime/pack/dist/opt/matchit/plugin/*.vim %dir %{_datadir}/nvim/runtime/pack/dist/opt/swapmouse %dir %{_datadir}/nvim/runtime/pack/dist/opt/swapmouse/plugin -%{_datadir}/nvim/runtime/pack/dist/opt/swapmouse/plugin/swapmouse.vim +%{_datadir}/nvim/runtime/pack/dist/opt/swapmouse/plugin/*.vim %dir %{_datadir}/nvim/runtime/pack/dist/opt/termdebug %dir %{_datadir}/nvim/runtime/pack/dist/opt/termdebug/plugin -%{_datadir}/nvim/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim - -%dir %{_datadir}/nvim/runtime/pack/dist/opt/vimball -%dir %{_datadir}/nvim/runtime/pack/dist/opt/vimball/plugin -%{_datadir}/nvim/runtime/pack/dist/opt/vimball/plugin/vimballPlugin.vim - -%dir %{_datadir}/nvim/runtime/pack/dist/opt/vimball/autoload -%{_datadir}/nvim/runtime/pack/dist/opt/vimball/autoload/vimball.vim - -%dir %{_datadir}/nvim/runtime/pack/dist/opt/vimball/doc -%{_datadir}/nvim/runtime/pack/dist/opt/vimball/doc/tags -%{_datadir}/nvim/runtime/pack/dist/opt/vimball/doc/vimball.txt +%{_datadir}/nvim/runtime/pack/dist/opt/termdebug/plugin/*.vim %dir %{_datadir}/nvim/runtime/plugin -%{_datadir}/nvim/runtime/plugin/editorconfig.lua -%{_datadir}/nvim/runtime/plugin/gzip.vim -%{_datadir}/nvim/runtime/plugin/health.vim -%{_datadir}/nvim/runtime/plugin/man.lua -%{_datadir}/nvim/runtime/plugin/matchit.vim -%{_datadir}/nvim/runtime/plugin/matchparen.vim -%{_datadir}/nvim/runtime/plugin/netrwPlugin.vim -%{_datadir}/nvim/runtime/plugin/nvim.lua -%{_datadir}/nvim/runtime/plugin/rplugin.vim -%{_datadir}/nvim/runtime/plugin/shada.vim -%{_datadir}/nvim/runtime/plugin/spellfile.vim -%{_datadir}/nvim/runtime/plugin/tarPlugin.vim -%{_datadir}/nvim/runtime/plugin/tohtml.vim -%{_datadir}/nvim/runtime/plugin/tutor.vim -%{_datadir}/nvim/runtime/plugin/zipPlugin.vim +%{_datadir}/nvim/runtime/plugin/*.lua +%{_datadir}/nvim/runtime/plugin/*.vim %dir %{_datadir}/nvim/runtime/queries/ -%dir %{_datadir}/nvim/runtime/queries/c/ -%{_datadir}/nvim/runtime/queries/c/folds.scm -%{_datadir}/nvim/runtime/queries/c/highlights.scm -%{_datadir}/nvim/runtime/queries/c/injections.scm + +%dir %{_datadir}/nvim/runtime/queries/c +%{_datadir}/nvim/runtime/queries/c/*.scm + +%dir %{_datadir}/nvim/runtime/queries/bash +%{_datadir}/nvim/runtime/queries/bash/*.scm %dir %{_datadir}/nvim/runtime/queries/lua/ %{_datadir}/nvim/runtime/queries/lua/folds.scm %{_datadir}/nvim/runtime/queries/lua/highlights.scm %{_datadir}/nvim/runtime/queries/lua/injections.scm -%dir %{_datadir}/nvim/runtime/queries/query/ -%{_datadir}/nvim/runtime/queries/query/folds.scm -%{_datadir}/nvim/runtime/queries/query/highlights.scm +%dir %{_datadir}/nvim/runtime/queries/markdown +%{_datadir}/nvim/runtime/queries/markdown/*.scm + +%dir %{_datadir}/nvim/runtime/queries/markdown_inline +%{_datadir}/nvim/runtime/queries/markdown_inline/*.scm + +%dir %{_datadir}/nvim/runtime/queries/python +%{_datadir}/nvim/runtime/queries/python/*.scm + +%dir %{_datadir}/nvim/runtime/queries/query +%{_datadir}/nvim/runtime/queries/query/*.scm %dir %{_datadir}/nvim/runtime/queries/vim/ -%{_datadir}/nvim/runtime/queries/vim/folds.scm -%{_datadir}/nvim/runtime/queries/vim/highlights.scm -%{_datadir}/nvim/runtime/queries/vim/injections.scm +%{_datadir}/nvim/runtime/queries/vim/*.scm %dir %{_datadir}/nvim/runtime/queries/vimdoc/ -%{_datadir}/nvim/runtime/queries/vimdoc/highlights.scm -%{_datadir}/nvim/runtime/queries/vimdoc/injections.scm +%{_datadir}/nvim/runtime/queries/vimdoc/*.scm %dir %{_datadir}/nvim/runtime/spell %{_datadir}/nvim/runtime/spell/cleanadd.vim %{_datadir}/nvim/runtime/spell/en.utf-8.spl %dir %{_datadir}/nvim/runtime/syntax -%{_datadir}/nvim/runtime/syntax/2html.vim -%{_datadir}/nvim/runtime/syntax/8th.vim +%{_datadir}/nvim/runtime/syntax/*.lua +%{_datadir}/nvim/runtime/syntax/*.vim %{_datadir}/nvim/runtime/syntax/README.txt -%{_datadir}/nvim/runtime/syntax/a2ps.vim -%{_datadir}/nvim/runtime/syntax/a65.vim -%{_datadir}/nvim/runtime/syntax/aap.vim -%{_datadir}/nvim/runtime/syntax/abap.vim -%{_datadir}/nvim/runtime/syntax/abaqus.vim -%{_datadir}/nvim/runtime/syntax/abc.vim -%{_datadir}/nvim/runtime/syntax/abel.vim -%{_datadir}/nvim/runtime/syntax/acedb.vim -%{_datadir}/nvim/runtime/syntax/ada.vim -%{_datadir}/nvim/runtime/syntax/aflex.vim -%{_datadir}/nvim/runtime/syntax/ahdl.vim -%{_datadir}/nvim/runtime/syntax/aidl.vim -%{_datadir}/nvim/runtime/syntax/alsaconf.vim -%{_datadir}/nvim/runtime/syntax/amiga.vim -%{_datadir}/nvim/runtime/syntax/aml.vim -%{_datadir}/nvim/runtime/syntax/ampl.vim -%{_datadir}/nvim/runtime/syntax/ant.vim -%{_datadir}/nvim/runtime/syntax/antlr.vim -%{_datadir}/nvim/runtime/syntax/apache.vim -%{_datadir}/nvim/runtime/syntax/apachestyle.vim -%{_datadir}/nvim/runtime/syntax/aptconf.vim -%{_datadir}/nvim/runtime/syntax/arch.vim -%{_datadir}/nvim/runtime/syntax/arduino.vim -%{_datadir}/nvim/runtime/syntax/art.vim -%{_datadir}/nvim/runtime/syntax/asciidoc.vim -%{_datadir}/nvim/runtime/syntax/asm.vim -%{_datadir}/nvim/runtime/syntax/asm68k.vim -%{_datadir}/nvim/runtime/syntax/asmh8300.vim -%{_datadir}/nvim/runtime/syntax/asn.vim -%{_datadir}/nvim/runtime/syntax/aspperl.vim -%{_datadir}/nvim/runtime/syntax/aspvbs.vim -%{_datadir}/nvim/runtime/syntax/asterisk.vim -%{_datadir}/nvim/runtime/syntax/asteriskvm.vim -%{_datadir}/nvim/runtime/syntax/atlas.vim -%{_datadir}/nvim/runtime/syntax/autodoc.vim -%{_datadir}/nvim/runtime/syntax/autohotkey.vim -%{_datadir}/nvim/runtime/syntax/autoit.vim -%{_datadir}/nvim/runtime/syntax/automake.vim -%{_datadir}/nvim/runtime/syntax/ave.vim -%{_datadir}/nvim/runtime/syntax/avra.vim -%{_datadir}/nvim/runtime/syntax/awk.vim -%{_datadir}/nvim/runtime/syntax/ayacc.vim -%{_datadir}/nvim/runtime/syntax/b.vim -%{_datadir}/nvim/runtime/syntax/baan.vim -%{_datadir}/nvim/runtime/syntax/bash.vim -%{_datadir}/nvim/runtime/syntax/basic.vim -%{_datadir}/nvim/runtime/syntax/bc.vim -%{_datadir}/nvim/runtime/syntax/bdf.vim -%{_datadir}/nvim/runtime/syntax/bib.vim -%{_datadir}/nvim/runtime/syntax/bindzone.vim -%{_datadir}/nvim/runtime/syntax/bitbake.vim -%{_datadir}/nvim/runtime/syntax/blank.vim -%{_datadir}/nvim/runtime/syntax/bsdl.vim -%{_datadir}/nvim/runtime/syntax/bst.vim -%{_datadir}/nvim/runtime/syntax/btm.vim -%{_datadir}/nvim/runtime/syntax/bzl.vim -%{_datadir}/nvim/runtime/syntax/bzr.vim -%{_datadir}/nvim/runtime/syntax/c.vim -%{_datadir}/nvim/runtime/syntax/cabal.vim -%{_datadir}/nvim/runtime/syntax/cabalconfig.vim -%{_datadir}/nvim/runtime/syntax/cabalproject.vim -%{_datadir}/nvim/runtime/syntax/calendar.vim -%{_datadir}/nvim/runtime/syntax/catalog.vim -%{_datadir}/nvim/runtime/syntax/cdl.vim -%{_datadir}/nvim/runtime/syntax/cdrdaoconf.vim -%{_datadir}/nvim/runtime/syntax/cdrtoc.vim -%{_datadir}/nvim/runtime/syntax/cf.vim -%{_datadir}/nvim/runtime/syntax/cfg.vim -%{_datadir}/nvim/runtime/syntax/ch.vim -%{_datadir}/nvim/runtime/syntax/chaiscript.vim -%{_datadir}/nvim/runtime/syntax/change.vim -%{_datadir}/nvim/runtime/syntax/changelog.vim -%{_datadir}/nvim/runtime/syntax/chaskell.vim -%{_datadir}/nvim/runtime/syntax/chatito.vim -%{_datadir}/nvim/runtime/syntax/checkhealth.vim -%{_datadir}/nvim/runtime/syntax/cheetah.vim -%{_datadir}/nvim/runtime/syntax/chicken.vim -%{_datadir}/nvim/runtime/syntax/chill.vim -%{_datadir}/nvim/runtime/syntax/chordpro.vim -%{_datadir}/nvim/runtime/syntax/cl.vim -%{_datadir}/nvim/runtime/syntax/clean.vim -%{_datadir}/nvim/runtime/syntax/clipper.vim -%{_datadir}/nvim/runtime/syntax/clojure.vim -%{_datadir}/nvim/runtime/syntax/cmake.vim -%{_datadir}/nvim/runtime/syntax/cmod.vim -%{_datadir}/nvim/runtime/syntax/cmusrc.vim -%{_datadir}/nvim/runtime/syntax/cobol.vim -%{_datadir}/nvim/runtime/syntax/coco.vim -%{_datadir}/nvim/runtime/syntax/colortest.vim -%{_datadir}/nvim/runtime/syntax/conaryrecipe.vim -%{_datadir}/nvim/runtime/syntax/conf.vim -%{_datadir}/nvim/runtime/syntax/config.vim -%{_datadir}/nvim/runtime/syntax/confini.vim -%{_datadir}/nvim/runtime/syntax/context.vim -%{_datadir}/nvim/runtime/syntax/cpp.vim -%{_datadir}/nvim/runtime/syntax/crm.vim -%{_datadir}/nvim/runtime/syntax/crontab.vim -%{_datadir}/nvim/runtime/syntax/cs.vim -%{_datadir}/nvim/runtime/syntax/csc.vim -%{_datadir}/nvim/runtime/syntax/csdl.vim -%{_datadir}/nvim/runtime/syntax/csh.vim -%{_datadir}/nvim/runtime/syntax/csp.vim -%{_datadir}/nvim/runtime/syntax/css.vim -%{_datadir}/nvim/runtime/syntax/cterm.vim -%{_datadir}/nvim/runtime/syntax/ctrlh.vim -%{_datadir}/nvim/runtime/syntax/cucumber.vim -%{_datadir}/nvim/runtime/syntax/cuda.vim -%{_datadir}/nvim/runtime/syntax/cupl.vim -%{_datadir}/nvim/runtime/syntax/cuplsim.vim -%{_datadir}/nvim/runtime/syntax/cvs.vim -%{_datadir}/nvim/runtime/syntax/cvsrc.vim -%{_datadir}/nvim/runtime/syntax/cweb.vim -%{_datadir}/nvim/runtime/syntax/cynlib.vim -%{_datadir}/nvim/runtime/syntax/cynpp.vim -%{_datadir}/nvim/runtime/syntax/d.vim -%{_datadir}/nvim/runtime/syntax/dart.vim -%{_datadir}/nvim/runtime/syntax/datascript.vim -%{_datadir}/nvim/runtime/syntax/dcd.vim -%{_datadir}/nvim/runtime/syntax/dcl.vim -%{_datadir}/nvim/runtime/syntax/debchangelog.vim -%{_datadir}/nvim/runtime/syntax/debcontrol.vim -%{_datadir}/nvim/runtime/syntax/debcopyright.vim -%{_datadir}/nvim/runtime/syntax/debsources.vim -%{_datadir}/nvim/runtime/syntax/def.vim -%{_datadir}/nvim/runtime/syntax/denyhosts.vim -%{_datadir}/nvim/runtime/syntax/dep3patch.vim -%{_datadir}/nvim/runtime/syntax/desc.vim -%{_datadir}/nvim/runtime/syntax/desktop.vim -%{_datadir}/nvim/runtime/syntax/dictconf.vim -%{_datadir}/nvim/runtime/syntax/dictdconf.vim -%{_datadir}/nvim/runtime/syntax/diff.vim -%{_datadir}/nvim/runtime/syntax/dircolors.vim -%{_datadir}/nvim/runtime/syntax/dirpager.vim -%{_datadir}/nvim/runtime/syntax/diva.vim -%{_datadir}/nvim/runtime/syntax/django.vim -%{_datadir}/nvim/runtime/syntax/dns.vim -%{_datadir}/nvim/runtime/syntax/dnsmasq.vim -%{_datadir}/nvim/runtime/syntax/docbk.vim -%{_datadir}/nvim/runtime/syntax/docbksgml.vim -%{_datadir}/nvim/runtime/syntax/docbkxml.vim -%{_datadir}/nvim/runtime/syntax/dockerfile.vim -%{_datadir}/nvim/runtime/syntax/dosbatch.vim -%{_datadir}/nvim/runtime/syntax/dosini.vim -%{_datadir}/nvim/runtime/syntax/dot.vim -%{_datadir}/nvim/runtime/syntax/doxygen.vim -%{_datadir}/nvim/runtime/syntax/dracula.vim -%{_datadir}/nvim/runtime/syntax/dsl.vim -%{_datadir}/nvim/runtime/syntax/dtd.vim -%{_datadir}/nvim/runtime/syntax/dtml.vim -%{_datadir}/nvim/runtime/syntax/dtrace.vim -%{_datadir}/nvim/runtime/syntax/dts.vim -%{_datadir}/nvim/runtime/syntax/dune.vim -%{_datadir}/nvim/runtime/syntax/dylan.vim -%{_datadir}/nvim/runtime/syntax/dylanintr.vim -%{_datadir}/nvim/runtime/syntax/dylanlid.vim -%{_datadir}/nvim/runtime/syntax/ecd.vim -%{_datadir}/nvim/runtime/syntax/edif.vim -%{_datadir}/nvim/runtime/syntax/editorconfig.vim -%{_datadir}/nvim/runtime/syntax/eiffel.vim -%{_datadir}/nvim/runtime/syntax/elf.vim -%{_datadir}/nvim/runtime/syntax/elinks.vim -%{_datadir}/nvim/runtime/syntax/elm.vim -%{_datadir}/nvim/runtime/syntax/elmfilt.vim -%{_datadir}/nvim/runtime/syntax/erlang.vim -%{_datadir}/nvim/runtime/syntax/eruby.vim -%{_datadir}/nvim/runtime/syntax/esmtprc.vim -%{_datadir}/nvim/runtime/syntax/esqlc.vim -%{_datadir}/nvim/runtime/syntax/esterel.vim -%{_datadir}/nvim/runtime/syntax/eterm.vim -%{_datadir}/nvim/runtime/syntax/euphoria3.vim -%{_datadir}/nvim/runtime/syntax/euphoria4.vim -%{_datadir}/nvim/runtime/syntax/eviews.vim -%{_datadir}/nvim/runtime/syntax/exim.vim -%{_datadir}/nvim/runtime/syntax/expect.vim -%{_datadir}/nvim/runtime/syntax/exports.vim -%{_datadir}/nvim/runtime/syntax/falcon.vim -%{_datadir}/nvim/runtime/syntax/fan.vim -%{_datadir}/nvim/runtime/syntax/fasm.vim -%{_datadir}/nvim/runtime/syntax/fdcc.vim -%{_datadir}/nvim/runtime/syntax/fetchmail.vim -%{_datadir}/nvim/runtime/syntax/fgl.vim -%{_datadir}/nvim/runtime/syntax/fish.vim -%{_datadir}/nvim/runtime/syntax/flexwiki.vim -%{_datadir}/nvim/runtime/syntax/focexec.vim -%{_datadir}/nvim/runtime/syntax/form.vim -%{_datadir}/nvim/runtime/syntax/forth.vim -%{_datadir}/nvim/runtime/syntax/fortran.vim -%{_datadir}/nvim/runtime/syntax/foxpro.vim -%{_datadir}/nvim/runtime/syntax/fpcmake.vim -%{_datadir}/nvim/runtime/syntax/framescript.vim -%{_datadir}/nvim/runtime/syntax/freebasic.vim -%{_datadir}/nvim/runtime/syntax/fstab.vim -%{_datadir}/nvim/runtime/syntax/fvwm.vim -%{_datadir}/nvim/runtime/syntax/fvwm2m4.vim -%{_datadir}/nvim/runtime/syntax/gdb.vim -%{_datadir}/nvim/runtime/syntax/gdmo.vim -%{_datadir}/nvim/runtime/syntax/gdresource.vim -%{_datadir}/nvim/runtime/syntax/gdscript.vim -%{_datadir}/nvim/runtime/syntax/gdshader.vim -%{_datadir}/nvim/runtime/syntax/gedcom.vim -%{_datadir}/nvim/runtime/syntax/gemtext.vim -%{_datadir}/nvim/runtime/syntax/gift.vim -%{_datadir}/nvim/runtime/syntax/git.vim -%{_datadir}/nvim/runtime/syntax/gitattributes.vim -%{_datadir}/nvim/runtime/syntax/gitcommit.vim -%{_datadir}/nvim/runtime/syntax/gitconfig.vim -%{_datadir}/nvim/runtime/syntax/gitignore.vim -%{_datadir}/nvim/runtime/syntax/gitolite.vim -%{_datadir}/nvim/runtime/syntax/gitrebase.vim -%{_datadir}/nvim/runtime/syntax/gitsendemail.vim -%{_datadir}/nvim/runtime/syntax/gkrellmrc.vim -%{_datadir}/nvim/runtime/syntax/gnash.vim -%{_datadir}/nvim/runtime/syntax/gnuplot.vim -%{_datadir}/nvim/runtime/syntax/go.vim -%{_datadir}/nvim/runtime/syntax/godoc.vim -%{_datadir}/nvim/runtime/syntax/gp.vim -%{_datadir}/nvim/runtime/syntax/gpg.vim -%{_datadir}/nvim/runtime/syntax/gprof.vim -%{_datadir}/nvim/runtime/syntax/grads.vim -%{_datadir}/nvim/runtime/syntax/gretl.vim -%{_datadir}/nvim/runtime/syntax/groff.vim -%{_datadir}/nvim/runtime/syntax/groovy.vim -%{_datadir}/nvim/runtime/syntax/group.vim -%{_datadir}/nvim/runtime/syntax/grub.vim -%{_datadir}/nvim/runtime/syntax/gsp.vim -%{_datadir}/nvim/runtime/syntax/gtkrc.vim -%{_datadir}/nvim/runtime/syntax/gvpr.vim -%{_datadir}/nvim/runtime/syntax/gyp.vim -%{_datadir}/nvim/runtime/syntax/haml.vim -%{_datadir}/nvim/runtime/syntax/hamster.vim -%{_datadir}/nvim/runtime/syntax/hare.vim -%{_datadir}/nvim/runtime/syntax/haskell.vim -%{_datadir}/nvim/runtime/syntax/haste.vim -%{_datadir}/nvim/runtime/syntax/hastepreproc.vim -%{_datadir}/nvim/runtime/syntax/hb.vim -%{_datadir}/nvim/runtime/syntax/help.vim -%{_datadir}/nvim/runtime/syntax/help_ru.vim -%{_datadir}/nvim/runtime/syntax/hercules.vim -%{_datadir}/nvim/runtime/syntax/hex.vim -%{_datadir}/nvim/runtime/syntax/hgcommit.vim -%{_datadir}/nvim/runtime/syntax/hitest.vim -%{_datadir}/nvim/runtime/syntax/hlsplaylist.vim -%{_datadir}/nvim/runtime/syntax/hog.vim -%{_datadir}/nvim/runtime/syntax/hollywood.vim -%{_datadir}/nvim/runtime/syntax/hostconf.vim -%{_datadir}/nvim/runtime/syntax/hostsaccess.vim -%{_datadir}/nvim/runtime/syntax/html.vim -%{_datadir}/nvim/runtime/syntax/htmlcheetah.vim -%{_datadir}/nvim/runtime/syntax/htmldjango.vim -%{_datadir}/nvim/runtime/syntax/htmlm4.vim -%{_datadir}/nvim/runtime/syntax/htmlos.vim -%{_datadir}/nvim/runtime/syntax/i3config.vim -%{_datadir}/nvim/runtime/syntax/ia64.vim -%{_datadir}/nvim/runtime/syntax/ibasic.vim -%{_datadir}/nvim/runtime/syntax/icemenu.vim -%{_datadir}/nvim/runtime/syntax/icon.vim -%{_datadir}/nvim/runtime/syntax/idl.vim -%{_datadir}/nvim/runtime/syntax/idlang.vim -%{_datadir}/nvim/runtime/syntax/indent.vim -%{_datadir}/nvim/runtime/syntax/inform.vim -%{_datadir}/nvim/runtime/syntax/initex.vim -%{_datadir}/nvim/runtime/syntax/initng.vim -%{_datadir}/nvim/runtime/syntax/inittab.vim -%{_datadir}/nvim/runtime/syntax/ipfilter.vim -%{_datadir}/nvim/runtime/syntax/ishd.vim -%{_datadir}/nvim/runtime/syntax/iss.vim -%{_datadir}/nvim/runtime/syntax/ist.vim -%{_datadir}/nvim/runtime/syntax/j.vim -%{_datadir}/nvim/runtime/syntax/jal.vim -%{_datadir}/nvim/runtime/syntax/jam.vim -%{_datadir}/nvim/runtime/syntax/jargon.vim -%{_datadir}/nvim/runtime/syntax/java.vim -%{_datadir}/nvim/runtime/syntax/javacc.vim -%{_datadir}/nvim/runtime/syntax/javascript.vim -%{_datadir}/nvim/runtime/syntax/javascriptreact.vim -%{_datadir}/nvim/runtime/syntax/jess.vim -%{_datadir}/nvim/runtime/syntax/jgraph.vim -%{_datadir}/nvim/runtime/syntax/jovial.vim -%{_datadir}/nvim/runtime/syntax/jproperties.vim -%{_datadir}/nvim/runtime/syntax/json.vim -%{_datadir}/nvim/runtime/syntax/jsonc.vim -%{_datadir}/nvim/runtime/syntax/jsp.vim -%{_datadir}/nvim/runtime/syntax/julia.vim -%{_datadir}/nvim/runtime/syntax/kconfig.vim -%{_datadir}/nvim/runtime/syntax/kivy.vim -%{_datadir}/nvim/runtime/syntax/kix.vim -%{_datadir}/nvim/runtime/syntax/krl.vim -%{_datadir}/nvim/runtime/syntax/kscript.vim -%{_datadir}/nvim/runtime/syntax/kwt.vim -%{_datadir}/nvim/runtime/syntax/lace.vim -%{_datadir}/nvim/runtime/syntax/latte.vim -%{_datadir}/nvim/runtime/syntax/lc.vim -%{_datadir}/nvim/runtime/syntax/ld.vim -%{_datadir}/nvim/runtime/syntax/ldapconf.vim -%{_datadir}/nvim/runtime/syntax/ldif.vim -%{_datadir}/nvim/runtime/syntax/less.vim -%{_datadir}/nvim/runtime/syntax/lex.vim -%{_datadir}/nvim/runtime/syntax/lftp.vim -%{_datadir}/nvim/runtime/syntax/lhaskell.vim -%{_datadir}/nvim/runtime/syntax/libao.vim -%{_datadir}/nvim/runtime/syntax/lifelines.vim -%{_datadir}/nvim/runtime/syntax/lilo.vim -%{_datadir}/nvim/runtime/syntax/limits.vim -%{_datadir}/nvim/runtime/syntax/liquid.vim -%{_datadir}/nvim/runtime/syntax/lisp.vim -%{_datadir}/nvim/runtime/syntax/lite.vim -%{_datadir}/nvim/runtime/syntax/litestep.vim -%{_datadir}/nvim/runtime/syntax/loginaccess.vim -%{_datadir}/nvim/runtime/syntax/logindefs.vim -%{_datadir}/nvim/runtime/syntax/logtalk.vim -%{_datadir}/nvim/runtime/syntax/lotos.vim -%{_datadir}/nvim/runtime/syntax/lout.vim -%{_datadir}/nvim/runtime/syntax/lpc.vim -%{_datadir}/nvim/runtime/syntax/lprolog.vim -%{_datadir}/nvim/runtime/syntax/lscript.vim -%{_datadir}/nvim/runtime/syntax/lsl.vim -%{_datadir}/nvim/runtime/syntax/lsp_markdown.vim -%{_datadir}/nvim/runtime/syntax/lss.vim -%{_datadir}/nvim/runtime/syntax/lua.vim -%{_datadir}/nvim/runtime/syntax/lynx.vim -%{_datadir}/nvim/runtime/syntax/lyrics.vim -%{_datadir}/nvim/runtime/syntax/m3build.vim -%{_datadir}/nvim/runtime/syntax/m3quake.vim -%{_datadir}/nvim/runtime/syntax/m4.vim -%{_datadir}/nvim/runtime/syntax/mail.vim -%{_datadir}/nvim/runtime/syntax/mailaliases.vim -%{_datadir}/nvim/runtime/syntax/mailcap.vim -%{_datadir}/nvim/runtime/syntax/make.vim -%{_datadir}/nvim/runtime/syntax/mallard.vim -%{_datadir}/nvim/runtime/syntax/man.vim -%{_datadir}/nvim/runtime/syntax/manconf.vim -%{_datadir}/nvim/runtime/syntax/manual.vim -%{_datadir}/nvim/runtime/syntax/maple.vim -%{_datadir}/nvim/runtime/syntax/markdown.vim -%{_datadir}/nvim/runtime/syntax/masm.vim -%{_datadir}/nvim/runtime/syntax/mason.vim -%{_datadir}/nvim/runtime/syntax/master.vim -%{_datadir}/nvim/runtime/syntax/matlab.vim -%{_datadir}/nvim/runtime/syntax/maxima.vim -%{_datadir}/nvim/runtime/syntax/mel.vim -%{_datadir}/nvim/runtime/syntax/mermaid.vim -%{_datadir}/nvim/runtime/syntax/meson.vim -%{_datadir}/nvim/runtime/syntax/messages.vim -%{_datadir}/nvim/runtime/syntax/mf.vim -%{_datadir}/nvim/runtime/syntax/mgl.vim -%{_datadir}/nvim/runtime/syntax/mgp.vim -%{_datadir}/nvim/runtime/syntax/mib.vim -%{_datadir}/nvim/runtime/syntax/mix.vim -%{_datadir}/nvim/runtime/syntax/mma.vim -%{_datadir}/nvim/runtime/syntax/mmix.vim -%{_datadir}/nvim/runtime/syntax/mmp.vim -%{_datadir}/nvim/runtime/syntax/modconf.vim -%{_datadir}/nvim/runtime/syntax/model.vim -%{_datadir}/nvim/runtime/syntax/modsim3.vim -%{_datadir}/nvim/runtime/syntax/modula2.vim -%{_datadir}/nvim/runtime/syntax/modula3.vim -%{_datadir}/nvim/runtime/syntax/monk.vim -%{_datadir}/nvim/runtime/syntax/moo.vim -%{_datadir}/nvim/runtime/syntax/mp.vim -%{_datadir}/nvim/runtime/syntax/mplayerconf.vim -%{_datadir}/nvim/runtime/syntax/mrxvtrc.vim -%{_datadir}/nvim/runtime/syntax/msidl.vim -%{_datadir}/nvim/runtime/syntax/msmessages.vim -%{_datadir}/nvim/runtime/syntax/msql.vim -%{_datadir}/nvim/runtime/syntax/mupad.vim -%{_datadir}/nvim/runtime/syntax/murphi.vim -%{_datadir}/nvim/runtime/syntax/mush.vim -%{_datadir}/nvim/runtime/syntax/muttrc.vim -%{_datadir}/nvim/runtime/syntax/mysql.vim -%{_datadir}/nvim/runtime/syntax/n1ql.vim -%{_datadir}/nvim/runtime/syntax/named.vim -%{_datadir}/nvim/runtime/syntax/nanorc.vim -%{_datadir}/nvim/runtime/syntax/nasm.vim -%{_datadir}/nvim/runtime/syntax/nastran.vim -%{_datadir}/nvim/runtime/syntax/natural.vim -%{_datadir}/nvim/runtime/syntax/ncf.vim -%{_datadir}/nvim/runtime/syntax/neomuttrc.vim -%{_datadir}/nvim/runtime/syntax/netrc.vim -%{_datadir}/nvim/runtime/syntax/netrw.vim -%{_datadir}/nvim/runtime/syntax/nginx.vim -%{_datadir}/nvim/runtime/syntax/ninja.vim -%{_datadir}/nvim/runtime/syntax/nix.vim -%{_datadir}/nvim/runtime/syntax/nosyntax.vim -%{_datadir}/nvim/runtime/syntax/nqc.vim -%{_datadir}/nvim/runtime/syntax/nroff.vim -%{_datadir}/nvim/runtime/syntax/nsis.vim -%{_datadir}/nvim/runtime/syntax/obj.vim -%{_datadir}/nvim/runtime/syntax/objc.vim -%{_datadir}/nvim/runtime/syntax/objcpp.vim -%{_datadir}/nvim/runtime/syntax/obse.vim -%{_datadir}/nvim/runtime/syntax/ocaml.vim -%{_datadir}/nvim/runtime/syntax/occam.vim -%{_datadir}/nvim/runtime/syntax/omnimark.vim -%{_datadir}/nvim/runtime/syntax/opam.vim -%{_datadir}/nvim/runtime/syntax/openroad.vim -%{_datadir}/nvim/runtime/syntax/openscad.vim -%{_datadir}/nvim/runtime/syntax/openvpn.vim -%{_datadir}/nvim/runtime/syntax/opl.vim -%{_datadir}/nvim/runtime/syntax/ora.vim -%{_datadir}/nvim/runtime/syntax/pamconf.vim -%{_datadir}/nvim/runtime/syntax/pamenv.vim -%{_datadir}/nvim/runtime/syntax/papp.vim -%{_datadir}/nvim/runtime/syntax/pascal.vim -%{_datadir}/nvim/runtime/syntax/passwd.vim -%{_datadir}/nvim/runtime/syntax/pbtxt.vim -%{_datadir}/nvim/runtime/syntax/pcap.vim -%{_datadir}/nvim/runtime/syntax/pccts.vim -%{_datadir}/nvim/runtime/syntax/pdf.vim -%{_datadir}/nvim/runtime/syntax/perl.vim -%{_datadir}/nvim/runtime/syntax/pf.vim -%{_datadir}/nvim/runtime/syntax/pfmain.vim -%{_datadir}/nvim/runtime/syntax/php.vim -%{_datadir}/nvim/runtime/syntax/phtml.vim -%{_datadir}/nvim/runtime/syntax/pic.vim -%{_datadir}/nvim/runtime/syntax/pike.vim -%{_datadir}/nvim/runtime/syntax/pilrc.vim -%{_datadir}/nvim/runtime/syntax/pine.vim -%{_datadir}/nvim/runtime/syntax/pinfo.vim -%{_datadir}/nvim/runtime/syntax/plaintex.vim -%{_datadir}/nvim/runtime/syntax/pli.vim -%{_datadir}/nvim/runtime/syntax/plm.vim -%{_datadir}/nvim/runtime/syntax/plp.vim -%{_datadir}/nvim/runtime/syntax/plsql.vim -%{_datadir}/nvim/runtime/syntax/po.vim -%{_datadir}/nvim/runtime/syntax/pod.vim -%{_datadir}/nvim/runtime/syntax/poefilter.vim -%{_datadir}/nvim/runtime/syntax/poke.vim -%{_datadir}/nvim/runtime/syntax/postscr.vim -%{_datadir}/nvim/runtime/syntax/pov.vim -%{_datadir}/nvim/runtime/syntax/povini.vim -%{_datadir}/nvim/runtime/syntax/ppd.vim -%{_datadir}/nvim/runtime/syntax/ppwiz.vim -%{_datadir}/nvim/runtime/syntax/prescribe.vim -%{_datadir}/nvim/runtime/syntax/privoxy.vim -%{_datadir}/nvim/runtime/syntax/procmail.vim -%{_datadir}/nvim/runtime/syntax/progress.vim -%{_datadir}/nvim/runtime/syntax/prolog.vim -%{_datadir}/nvim/runtime/syntax/promela.vim -%{_datadir}/nvim/runtime/syntax/proto.vim -%{_datadir}/nvim/runtime/syntax/protocols.vim -%{_datadir}/nvim/runtime/syntax/ps1.vim -%{_datadir}/nvim/runtime/syntax/ps1xml.vim -%{_datadir}/nvim/runtime/syntax/psf.vim -%{_datadir}/nvim/runtime/syntax/psl.vim -%{_datadir}/nvim/runtime/syntax/ptcap.vim -%{_datadir}/nvim/runtime/syntax/purifylog.vim -%{_datadir}/nvim/runtime/syntax/pyrex.vim -%{_datadir}/nvim/runtime/syntax/python.vim -%{_datadir}/nvim/runtime/syntax/python2.vim -%{_datadir}/nvim/runtime/syntax/qb64.vim -%{_datadir}/nvim/runtime/syntax/qf.vim -%{_datadir}/nvim/runtime/syntax/quake.vim -%{_datadir}/nvim/runtime/syntax/quarto.vim -%{_datadir}/nvim/runtime/syntax/query.lua -%{_datadir}/nvim/runtime/syntax/r.vim -%{_datadir}/nvim/runtime/syntax/racc.vim -%{_datadir}/nvim/runtime/syntax/racket.vim -%{_datadir}/nvim/runtime/syntax/radiance.vim -%{_datadir}/nvim/runtime/syntax/raku.vim -%{_datadir}/nvim/runtime/syntax/raml.vim -%{_datadir}/nvim/runtime/syntax/ratpoison.vim -%{_datadir}/nvim/runtime/syntax/rc.vim -%{_datadir}/nvim/runtime/syntax/rcs.vim -%{_datadir}/nvim/runtime/syntax/rcslog.vim -%{_datadir}/nvim/runtime/syntax/readline.vim -%{_datadir}/nvim/runtime/syntax/rebol.vim -%{_datadir}/nvim/runtime/syntax/redif.vim -%{_datadir}/nvim/runtime/syntax/registry.vim -%{_datadir}/nvim/runtime/syntax/rego.vim -%{_datadir}/nvim/runtime/syntax/remind.vim -%{_datadir}/nvim/runtime/syntax/resolv.vim -%{_datadir}/nvim/runtime/syntax/reva.vim -%{_datadir}/nvim/runtime/syntax/rexx.vim -%{_datadir}/nvim/runtime/syntax/rhelp.vim -%{_datadir}/nvim/runtime/syntax/rib.vim -%{_datadir}/nvim/runtime/syntax/rmd.vim -%{_datadir}/nvim/runtime/syntax/rnc.vim -%{_datadir}/nvim/runtime/syntax/rng.vim -%{_datadir}/nvim/runtime/syntax/rnoweb.vim -%{_datadir}/nvim/runtime/syntax/robots.vim -%{_datadir}/nvim/runtime/syntax/routeros.vim -%{_datadir}/nvim/runtime/syntax/rpcgen.vim -%{_datadir}/nvim/runtime/syntax/rpl.vim -%{_datadir}/nvim/runtime/syntax/rrst.vim -%{_datadir}/nvim/runtime/syntax/rst.vim -%{_datadir}/nvim/runtime/syntax/rtf.vim -%{_datadir}/nvim/runtime/syntax/ruby.vim -%{_datadir}/nvim/runtime/syntax/rust.vim -%{_datadir}/nvim/runtime/syntax/samba.vim -%{_datadir}/nvim/runtime/syntax/sas.vim -%{_datadir}/nvim/runtime/syntax/sass.vim -%{_datadir}/nvim/runtime/syntax/sather.vim -%{_datadir}/nvim/runtime/syntax/sbt.vim -%{_datadir}/nvim/runtime/syntax/scala.vim -%{_datadir}/nvim/runtime/syntax/scdoc.vim -%{_datadir}/nvim/runtime/syntax/scheme.vim -%{_datadir}/nvim/runtime/syntax/scilab.vim -%{_datadir}/nvim/runtime/syntax/screen.vim -%{_datadir}/nvim/runtime/syntax/scss.vim -%{_datadir}/nvim/runtime/syntax/sd.vim -%{_datadir}/nvim/runtime/syntax/sdc.vim -%{_datadir}/nvim/runtime/syntax/sdl.vim -%{_datadir}/nvim/runtime/syntax/sed.vim -%{_datadir}/nvim/runtime/syntax/sendpr.vim -%{_datadir}/nvim/runtime/syntax/sensors.vim -%{_datadir}/nvim/runtime/syntax/services.vim -%{_datadir}/nvim/runtime/syntax/setserial.vim -%{_datadir}/nvim/runtime/syntax/sexplib.vim -%{_datadir}/nvim/runtime/syntax/sgml.vim -%{_datadir}/nvim/runtime/syntax/sgmldecl.vim -%{_datadir}/nvim/runtime/syntax/sgmllnx.vim -%{_datadir}/nvim/runtime/syntax/sh.vim -%{_datadir}/nvim/runtime/syntax/shada.vim -%{_datadir}/nvim/runtime/syntax/shared/typescriptcommon.vim -%{_datadir}/nvim/runtime/syntax/sicad.vim -%{_datadir}/nvim/runtime/syntax/sieve.vim -%{_datadir}/nvim/runtime/syntax/sil.vim -%{_datadir}/nvim/runtime/syntax/simula.vim -%{_datadir}/nvim/runtime/syntax/sinda.vim -%{_datadir}/nvim/runtime/syntax/sindacmp.vim -%{_datadir}/nvim/runtime/syntax/sindaout.vim -%{_datadir}/nvim/runtime/syntax/sisu.vim -%{_datadir}/nvim/runtime/syntax/skill.vim -%{_datadir}/nvim/runtime/syntax/sl.vim -%{_datadir}/nvim/runtime/syntax/slang.vim -%{_datadir}/nvim/runtime/syntax/slice.vim -%{_datadir}/nvim/runtime/syntax/slpconf.vim -%{_datadir}/nvim/runtime/syntax/slpreg.vim -%{_datadir}/nvim/runtime/syntax/slpspi.vim -%{_datadir}/nvim/runtime/syntax/slrnrc.vim -%{_datadir}/nvim/runtime/syntax/slrnsc.vim -%{_datadir}/nvim/runtime/syntax/sm.vim -%{_datadir}/nvim/runtime/syntax/smarty.vim -%{_datadir}/nvim/runtime/syntax/smcl.vim -%{_datadir}/nvim/runtime/syntax/smil.vim -%{_datadir}/nvim/runtime/syntax/smith.vim -%{_datadir}/nvim/runtime/syntax/sml.vim -%{_datadir}/nvim/runtime/syntax/snnsnet.vim -%{_datadir}/nvim/runtime/syntax/snnspat.vim -%{_datadir}/nvim/runtime/syntax/snnsres.vim -%{_datadir}/nvim/runtime/syntax/snobol4.vim -%{_datadir}/nvim/runtime/syntax/solidity.vim -%{_datadir}/nvim/runtime/syntax/spec.vim -%{_datadir}/nvim/runtime/syntax/specman.vim -%{_datadir}/nvim/runtime/syntax/spice.vim -%{_datadir}/nvim/runtime/syntax/splint.vim -%{_datadir}/nvim/runtime/syntax/spup.vim -%{_datadir}/nvim/runtime/syntax/spyce.vim -%{_datadir}/nvim/runtime/syntax/sql.vim -%{_datadir}/nvim/runtime/syntax/sqlanywhere.vim -%{_datadir}/nvim/runtime/syntax/sqlforms.vim -%{_datadir}/nvim/runtime/syntax/sqlhana.vim -%{_datadir}/nvim/runtime/syntax/sqlinformix.vim -%{_datadir}/nvim/runtime/syntax/sqlj.vim -%{_datadir}/nvim/runtime/syntax/sqloracle.vim -%{_datadir}/nvim/runtime/syntax/sqr.vim -%{_datadir}/nvim/runtime/syntax/squid.vim -%{_datadir}/nvim/runtime/syntax/squirrel.vim -%{_datadir}/nvim/runtime/syntax/srec.vim -%{_datadir}/nvim/runtime/syntax/srt.vim -%{_datadir}/nvim/runtime/syntax/ssa.vim -%{_datadir}/nvim/runtime/syntax/sshconfig.vim -%{_datadir}/nvim/runtime/syntax/sshdconfig.vim -%{_datadir}/nvim/runtime/syntax/st.vim -%{_datadir}/nvim/runtime/syntax/stata.vim -%{_datadir}/nvim/runtime/syntax/stp.vim -%{_datadir}/nvim/runtime/syntax/strace.vim -%{_datadir}/nvim/runtime/syntax/structurizr.vim -%{_datadir}/nvim/runtime/syntax/sudoers.vim -%{_datadir}/nvim/runtime/syntax/svg.vim -%{_datadir}/nvim/runtime/syntax/svn.vim -%{_datadir}/nvim/runtime/syntax/swayconfig.vim -%{_datadir}/nvim/runtime/syntax/swift.vim -%{_datadir}/nvim/runtime/syntax/swiftgyb.vim -%{_datadir}/nvim/runtime/syntax/synload.vim -%{_datadir}/nvim/runtime/syntax/syntax.vim -%{_datadir}/nvim/runtime/syntax/sysctl.vim -%{_datadir}/nvim/runtime/syntax/systemd.vim -%{_datadir}/nvim/runtime/syntax/systemverilog.vim -%{_datadir}/nvim/runtime/syntax/tads.vim -%{_datadir}/nvim/runtime/syntax/tags.vim -%{_datadir}/nvim/runtime/syntax/tak.vim -%{_datadir}/nvim/runtime/syntax/takcmp.vim -%{_datadir}/nvim/runtime/syntax/takout.vim -%{_datadir}/nvim/runtime/syntax/tap.vim -%{_datadir}/nvim/runtime/syntax/tar.vim -%{_datadir}/nvim/runtime/syntax/taskdata.vim -%{_datadir}/nvim/runtime/syntax/taskedit.vim -%{_datadir}/nvim/runtime/syntax/tasm.vim -%{_datadir}/nvim/runtime/syntax/tcl.vim -%{_datadir}/nvim/runtime/syntax/tcsh.vim -%{_datadir}/nvim/runtime/syntax/template.vim -%{_datadir}/nvim/runtime/syntax/teraterm.vim -%{_datadir}/nvim/runtime/syntax/terminfo.vim -%{_datadir}/nvim/runtime/syntax/tex.vim -%{_datadir}/nvim/runtime/syntax/texinfo.vim -%{_datadir}/nvim/runtime/syntax/texmf.vim -%{_datadir}/nvim/runtime/syntax/tf.vim -%{_datadir}/nvim/runtime/syntax/tidy.vim -%{_datadir}/nvim/runtime/syntax/tilde.vim -%{_datadir}/nvim/runtime/syntax/tli.vim -%{_datadir}/nvim/runtime/syntax/tmux.vim -%{_datadir}/nvim/runtime/syntax/toml.vim -%{_datadir}/nvim/runtime/syntax/tpp.vim -%{_datadir}/nvim/runtime/syntax/trasys.vim -%{_datadir}/nvim/runtime/syntax/treetop.vim -%{_datadir}/nvim/runtime/syntax/trustees.vim -%{_datadir}/nvim/runtime/syntax/tsalt.vim -%{_datadir}/nvim/runtime/syntax/tsscl.vim -%{_datadir}/nvim/runtime/syntax/tssgm.vim -%{_datadir}/nvim/runtime/syntax/tssop.vim -%{_datadir}/nvim/runtime/syntax/tt2.vim -%{_datadir}/nvim/runtime/syntax/tt2html.vim -%{_datadir}/nvim/runtime/syntax/tt2js.vim -%{_datadir}/nvim/runtime/syntax/tutor.vim -%{_datadir}/nvim/runtime/syntax/typescript.vim -%{_datadir}/nvim/runtime/syntax/typescriptreact.vim -%{_datadir}/nvim/runtime/syntax/uc.vim -%{_datadir}/nvim/runtime/syntax/udevconf.vim -%{_datadir}/nvim/runtime/syntax/udevperm.vim -%{_datadir}/nvim/runtime/syntax/udevrules.vim -%{_datadir}/nvim/runtime/syntax/uil.vim -%{_datadir}/nvim/runtime/syntax/updatedb.vim -%{_datadir}/nvim/runtime/syntax/upstart.vim -%{_datadir}/nvim/runtime/syntax/upstreamdat.vim -%{_datadir}/nvim/runtime/syntax/upstreaminstalllog.vim -%{_datadir}/nvim/runtime/syntax/upstreamlog.vim -%{_datadir}/nvim/runtime/syntax/upstreamrpt.vim -%{_datadir}/nvim/runtime/syntax/usserverlog.vim -%{_datadir}/nvim/runtime/syntax/usw2kagtlog.vim -%{_datadir}/nvim/runtime/syntax/valgrind.vim -%{_datadir}/nvim/runtime/syntax/vb.vim -%{_datadir}/nvim/runtime/syntax/vdf.vim -%{_datadir}/nvim/runtime/syntax/vera.vim -%{_datadir}/nvim/runtime/syntax/verilog.vim -%{_datadir}/nvim/runtime/syntax/verilogams.vim -%{_datadir}/nvim/runtime/syntax/vgrindefs.vim -%{_datadir}/nvim/runtime/syntax/vhdl.vim -%{_datadir}/nvim/runtime/syntax/vim.vim -%{_datadir}/nvim/runtime/syntax/viminfo.vim -%{_datadir}/nvim/runtime/syntax/vimnormal.vim -%{_datadir}/nvim/runtime/syntax/virata.vim -%{_datadir}/nvim/runtime/syntax/vmasm.vim -%{_datadir}/nvim/runtime/syntax/voscm.vim -%{_datadir}/nvim/runtime/syntax/vrml.vim -%{_datadir}/nvim/runtime/syntax/vroom.vim -%{_datadir}/nvim/runtime/syntax/vsejcl.vim -%{_datadir}/nvim/runtime/syntax/vue.vim -%{_datadir}/nvim/runtime/syntax/wast.vim -%{_datadir}/nvim/runtime/syntax/wdiff.vim -%{_datadir}/nvim/runtime/syntax/wdl.vim -%{_datadir}/nvim/runtime/syntax/web.vim -%{_datadir}/nvim/runtime/syntax/webmacro.vim -%{_datadir}/nvim/runtime/syntax/wget.vim -%{_datadir}/nvim/runtime/syntax/wget2.vim -%{_datadir}/nvim/runtime/syntax/whitespace.vim -%{_datadir}/nvim/runtime/syntax/winbatch.vim -%{_datadir}/nvim/runtime/syntax/wml.vim -%{_datadir}/nvim/runtime/syntax/wsh.vim -%{_datadir}/nvim/runtime/syntax/wsml.vim -%{_datadir}/nvim/runtime/syntax/wvdial.vim -%{_datadir}/nvim/runtime/syntax/xbl.vim -%{_datadir}/nvim/runtime/syntax/xdefaults.vim -%{_datadir}/nvim/runtime/syntax/xf86conf.vim -%{_datadir}/nvim/runtime/syntax/xhtml.vim -%{_datadir}/nvim/runtime/syntax/xinetd.vim -%{_datadir}/nvim/runtime/syntax/xkb.vim -%{_datadir}/nvim/runtime/syntax/xmath.vim -%{_datadir}/nvim/runtime/syntax/xml.vim -%{_datadir}/nvim/runtime/syntax/xmodmap.vim -%{_datadir}/nvim/runtime/syntax/xpm.vim -%{_datadir}/nvim/runtime/syntax/xpm2.vim -%{_datadir}/nvim/runtime/syntax/xquery.vim -%{_datadir}/nvim/runtime/syntax/xs.vim -%{_datadir}/nvim/runtime/syntax/xsd.vim -%{_datadir}/nvim/runtime/syntax/xslt.vim -%{_datadir}/nvim/runtime/syntax/xxd.vim -%{_datadir}/nvim/runtime/syntax/yacc.vim -%{_datadir}/nvim/runtime/syntax/yaml.vim -%{_datadir}/nvim/runtime/syntax/z8a.vim -%{_datadir}/nvim/runtime/syntax/zig.vim -%{_datadir}/nvim/runtime/syntax/zimbu.vim -%{_datadir}/nvim/runtime/syntax/zir.vim -%{_datadir}/nvim/runtime/syntax/zsh.vim + +%dir %{_datadir}/nvim/runtime/syntax/modula2 +%dir %{_datadir}/nvim/runtime/syntax/modula2/opt +%{_datadir}/nvim/runtime/syntax/modula2/opt/*.vim %dir %{_datadir}/nvim/runtime/syntax/vim %{_datadir}/nvim/runtime/syntax/vim/generated.vim %dir %{_datadir}/nvim/runtime/syntax/shared +%{_datadir}/nvim/runtime/syntax/shared/*.vim %{_datadir}/nvim/runtime/syntax/shared/README.txt -%{_datadir}/nvim/runtime/syntax/shared/hgcommitDiff.vim %dir %{_datadir}/nvim/runtime/tools -%{_datadir}/nvim/runtime/tools/check_colors.vim -%{_datadir}/nvim/runtime/tools/emoji_list.vim +%{_datadir}/nvim/runtime/tools/*.vim %dir %{_datadir}/nvim/runtime/tutor %{_datadir}/nvim/runtime/tutor/tutor.tutor @@ -1948,5 +399,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json +%dir %{_datadir}/nvim/runtime/tutor/ja +%{_datadir}/nvim/runtime/tutor/ja/vim-01-beginner.tutor +%{_datadir}/nvim/runtime/tutor/ja/vim-01-beginner.tutor.json + %changelog %autochangelog diff --git a/sources b/sources index 2846255..16a86cf 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (neovim-0.9.5.tar.gz) = 6e20d0a1d506dc292dd68dabe4b5635f86c019ca832f9927e907377e6d21fe7765b3010f5bba644bb2d7a76c178d55b290af24856a7e3c4083a1aa60bc496775 +SHA512 (neovim-0.10.0.tar.gz) = 878cb58729a18179b38303bd9cf79e38997c87946665ac4e7b76d87e15f5d001028fd1454ce30b20773b20a4fe929dfa399fc2ec7f6db0774a4e864c9e8586c1 From 16d35fc49b01fe558e12d040ab5b36ea80775b47 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Thu, 16 May 2024 17:27:18 +0200 Subject: [PATCH 24/60] Update neovim-lua-bit32.patch --- neovim-lua-bit32.patch | 29 ++++++++--------------------- 1 file changed, 8 insertions(+), 21 deletions(-) diff --git a/neovim-lua-bit32.patch b/neovim-lua-bit32.patch index 706c0dd..9618c0b 100644 --- a/neovim-lua-bit32.patch +++ b/neovim-lua-bit32.patch @@ -1,31 +1,18 @@ -Index: neovim-0.9.0/CMakeLists.txt +Index: neovim-0.10.0/src/nvim/ex_cmds.lua =================================================================== ---- neovim-0.9.0.orig/CMakeLists.txt 2023-04-07 18:47:09.146841186 +0200 -+++ neovim-0.9.0/CMakeLists.txt 2023-04-07 18:47:39.100006585 +0200 -@@ -163,7 +163,7 @@ foreach(CFGNAME ${CMAKE_CONFIGURATION_TY - set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${CFGNAME} ${CMAKE_BINARY_DIR}/lib) - endforeach() - --set(LUA_DEPENDENCIES lpeg mpack bit) -+set(LUA_DEPENDENCIES lpeg mpack bit32) - if(NOT LUA_PRG) - foreach(CURRENT_LUA_PRG luajit lua5.1 lua5.2 lua) - unset(_CHECK_LUA_PRG CACHE) -Index: neovim-0.9.0/src/nvim/ex_cmds.lua -=================================================================== ---- neovim-0.9.0.orig/src/nvim/ex_cmds.lua 2023-04-07 18:47:05.066818656 +0200 -+++ neovim-0.9.0/src/nvim/ex_cmds.lua 2023-04-07 18:47:09.147841191 +0200 +--- neovim-0.10.0.orig/src/nvim/ex_cmds.lua 2024-05-16 17:22:58.176811996 +0200 ++++ neovim-0.10.0/src/nvim/ex_cmds.lua 2024-05-16 17:23:05.255828571 +0200 @@ -1,4 +1,4 @@ -local bit = require 'bit' +local bit = require 'bit32' - local module = {} + local M = {} -Index: neovim-0.9.0/src/nvim/generators/gen_ex_cmds.lua +Index: neovim-0.10.0/src/nvim/generators/gen_ex_cmds.lua =================================================================== ---- neovim-0.9.0.orig/src/nvim/generators/gen_ex_cmds.lua 2023-04-07 18:47:05.066818656 +0200 -+++ neovim-0.9.0/src/nvim/generators/gen_ex_cmds.lua 2023-04-07 18:47:09.147841191 +0200 -@@ -22,7 +22,7 @@ local defsfname = autodir .. '/ex_cmds_d +--- neovim-0.10.0.orig/src/nvim/generators/gen_ex_cmds.lua 2024-05-16 17:22:58.177811999 +0200 ++++ neovim-0.10.0/src/nvim/generators/gen_ex_cmds.lua 2024-05-16 17:23:05.256828573 +0200 +@@ -10,7 +10,7 @@ local defsfname = autodir .. '/ex_cmds_d local enumfile = io.open(enumfname, 'w') local defsfile = io.open(defsfname, 'w') From 33e3717f923907b618992fc31e9d532731a9cf52 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Tue, 21 May 2024 15:32:47 +0200 Subject: [PATCH 25/60] Add RPM file triggers support to regenerate helptags --- neovim.spec | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/neovim.spec b/neovim.spec index 22cd8b4..196569f 100644 --- a/neovim.spec +++ b/neovim.spec @@ -139,6 +139,14 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ -print -exec chmod -x '{}' \; %find_lang nvim +# Refresh documentation helptags. +%transfiletriggerin -- %{_datadir}/nvim/runtime/doc +%{_bindir}/nvim -c ":helptags %{_datadir}/nvim/runtime/doc" -c ":q" &> /dev/null || : + +%transfiletriggerpostun -- %{_datadir}/nvim/runtime/doc +> %{_datadir}/nvim/runtime/doc/tags || : +%{_bindir}/nvim -c ":helptags %{_datadir}/nvim/runtime/doc" -c ":q" &> /dev/null || : + %files -f nvim.lang %license LICENSE.txt %doc CONTRIBUTING.md MAINTAIN.md README.md From fe0bb45e14b43ed5d9452c27eaee94a4c0caf47c Mon Sep 17 00:00:00 2001 From: Danie de Jager Date: Fri, 17 May 2024 07:54:23 +0000 Subject: [PATCH 26/60] Add missing lua5.1-lpeg runtime requirement --- neovim.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/neovim.spec b/neovim.spec index 196569f..33dc9dc 100644 --- a/neovim.spec +++ b/neovim.spec @@ -68,6 +68,7 @@ BuildRequires: lua5.1-bit32 Requires: lua5.1-luv >= %{luv_min_ver} # /with luajit %endif +Requires: lua5.1-lpeg BuildRequires: lua5.1-lpeg BuildRequires: lua5.1-mpack >= 1.0.11 %if %{with jemalloc} From bad08e3d82c15b4c997e44a5498938f22e6b6f8c Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Fri, 24 May 2024 07:49:48 +0200 Subject: [PATCH 27/60] Fix updating helptags resolves: rhbz#2282828 --- neovim.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/neovim.spec b/neovim.spec index 33dc9dc..374531d 100644 --- a/neovim.spec +++ b/neovim.spec @@ -142,11 +142,11 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ # Refresh documentation helptags. %transfiletriggerin -- %{_datadir}/nvim/runtime/doc -%{_bindir}/nvim -c ":helptags %{_datadir}/nvim/runtime/doc" -c ":q" &> /dev/null || : +%{_bindir}/nvim -u NONE -es -c ":helptags %{_datadir}/nvim/runtime/doc" -c ":q" &> /dev/null || : %transfiletriggerpostun -- %{_datadir}/nvim/runtime/doc > %{_datadir}/nvim/runtime/doc/tags || : -%{_bindir}/nvim -c ":helptags %{_datadir}/nvim/runtime/doc" -c ":q" &> /dev/null || : +%{_bindir}/nvim -u NONE -es -c ":helptags %{_datadir}/nvim/runtime/doc" -c ":q" &> /dev/null || : %files -f nvim.lang %license LICENSE.txt From 293775da62725b7d0bdde8eeb99c77b1584b1854 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Mon, 27 May 2024 08:44:12 +0200 Subject: [PATCH 28/60] Update minimal versions of requirements --- neovim.spec | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/neovim.spec b/neovim.spec index 374531d..7ee9cd9 100644 --- a/neovim.spec +++ b/neovim.spec @@ -22,7 +22,8 @@ %endif %global luv_min_ver 1.43.0 -%global tree_sitter_min_ver 0.20.8 +%global tree_sitter_min_ver 0.22.5 +%global vterm_min_ver 0.3.3 %global luv_include_dir %{_includedir}/luv %if %{with luajit} @@ -77,9 +78,9 @@ BuildRequires: jemalloc-devel BuildRequires: msgpack-devel >= 3.1.0 BuildRequires: pkgconfig(termkey) BuildRequires: pkgconfig(libuv) >= 1.42.0 -BuildRequires: pkgconfig(vterm) >= 0.3 +BuildRequires: pkgconfig(vterm) >= %{vterm_min_ver} # need the build with the fix for the resize buffer issue -Requires: libvterm >= 0.3 +Requires: libvterm >= %{vterm_min_ver} BuildRequires: pkgconfig(unibilium) BuildRequires: pkgconfig(tree-sitter) >= %{tree_sitter_min_ver} # tree-sitter didn't do an soname bump. enforce the min version From e35754f9ed0b6b6faceea5349c16a8d90ed69904 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Mon, 1 Jul 2024 15:09:16 +0200 Subject: [PATCH 29/60] resolves: rhbz#2283574 - Bundle required tree-sitter parsers --- .gitignore | 1 + mkvendor.sh | 28 ++++++++++++++++++++++++++++ neovim-bundled-licenses.txt | 2 ++ neovim.spec | 34 ++++++++++++++++++++++++++++------ sources | 1 + 5 files changed, 60 insertions(+), 6 deletions(-) create mode 100644 mkvendor.sh create mode 100644 neovim-bundled-licenses.txt diff --git a/.gitignore b/.gitignore index 33b3c89..97549f5 100644 --- a/.gitignore +++ b/.gitignore @@ -35,3 +35,4 @@ /neovim-0.9.4.tar.gz /neovim-0.9.5.tar.gz /neovim-0.10.0.tar.gz +/neovim-0.10.0-vendor.tar.gz diff --git a/mkvendor.sh b/mkvendor.sh new file mode 100644 index 0000000..c030923 --- /dev/null +++ b/mkvendor.sh @@ -0,0 +1,28 @@ + #!/usr/bin/bash -x + +set -euo pipefail + +url=$(rpmspec -P neovim.spec | sed -En 's/^Source0:[[:space:]]+//p') +archive=$(basename "$url") +tmp=$(mktemp -d) +trap "rm -rf $tmp" EXIT + +curl -Lo "${tmp}/${archive}" "${url}" +grep -F "${archive}" sources | (cd "${tmp}" && cksum -c) +mkdir -p "${tmp}/src" +tar -zxf "${tmp}/${archive}" -C "${tmp}/src" --strip-components=1 + +cmake -S "${tmp}/src/cmake.deps" -B "${tmp}/deps" -G Ninja \ + -DUSE_BUNDLED=OFF -DUSE_BUNDLED_TS_PARSERS=ON +targets=$(basename -a "${tmp}/deps"/build/downloads/treesitter_* | \ + xargs -I {} echo build/src/{}-stamp/{}-download) +ninja -C "${tmp}/deps" ${targets} + +mv "${tmp}/${archive}" . +vendor="${archive%.tar.gz}-vendor" +tar -zcf "${vendor}.tar.gz" -H pax --numeric-owner --owner=0:0 \ + -C "${tmp}/deps/build/downloads" . --transform="s/^\\./${vendor}/" + +cksum -a sha512 "${archive}" "${vendor}.tar.gz" | tee sources +echo +echo "Run: fedpkg new-sources ${archive} ${vendor}.tar.gz" diff --git a/neovim-bundled-licenses.txt b/neovim-bundled-licenses.txt new file mode 100644 index 0000000..fee3e11 --- /dev/null +++ b/neovim-bundled-licenses.txt @@ -0,0 +1,2 @@ +"ASL 2.0" +"MIT" diff --git a/neovim.spec b/neovim.spec index 7ee9cd9..a256de2 100644 --- a/neovim.spec +++ b/neovim.spec @@ -45,6 +45,9 @@ Url: https://neovim.io Source0: https://github.com/neovim/neovim/archive/v%{version}/%{name}-%{version}.tar.gz Source1: sysinit.vim Source2: spec-template +# Generated by mkvendor.sh +Source3: %{name}-%{version}-vendor.tar.gz +Source4: neovim-bundled-licenses.txt Patch1000: neovim-lua-bit32.patch @@ -106,7 +109,9 @@ excisions, Neovim is Vim. It is built for users who want the good parts of Vim, without compromise, and more. %prep -%setup -q +%setup -q -b3 + +cp %{SOURCE4} . %if %{without luajit} %patch -P 1000 -p1 @@ -116,19 +121,32 @@ parts of Vim, without compromise, and more. # set vars to make build reproducible; see config/CMakeLists.txt HOSTNAME=koji USERNAME=koji + + # Build the tree-sitter parsers first +mkdir -p .deps/build/ +ln -sfr ../%{name}-%{version}-vendor .deps/build/downloads +%define _vpath_srcdir cmake.deps +%define __cmake_builddir .deps +%cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DUSE_BUNDLED=OFF \ + -DUSE_BUNDLED_TS_PARSERS=ON +%cmake_build + +# Build neovim +%define _vpath_srcdir . +%define __cmake_builddir redhat-linux-build %cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DPREFER_LUA=%{?with_luajit:OFF}%{!?with_luajit:ON} \ -DLUA_PRG=%{lua_prg} \ -DENABLE_JEMALLOC=%{?with_jemalloc:ON}%{!?with_jemalloc:OFF} \ - -DLIBLUV_INCLUDE_DIR:PATH=%{luv_include_dir} \ - + -DLIBLUV_INCLUDE_DIR:PATH=%{luv_include_dir} %cmake_build %install %cmake_install -install -p -m 644 %SOURCE1 %{buildroot}%{_datadir}/nvim/sysinit.vim -install -p -m 644 %SOURCE2 %{buildroot}%{_datadir}/nvim/template.spec +install -p -m 644 %{SOURCE1} %{buildroot}%{_datadir}/nvim/sysinit.vim +install -p -m 644 %{SOURCE2} %{buildroot}%{_datadir}/nvim/template.spec desktop-file-install --dir=%{buildroot}%{_datadir}/applications \ runtime/nvim.desktop @@ -150,10 +168,14 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_bindir}/nvim -u NONE -es -c ":helptags %{_datadir}/nvim/runtime/doc" -c ":q" &> /dev/null || : %files -f nvim.lang -%license LICENSE.txt +%license LICENSE.txt neovim-bundled-licenses.txt %doc CONTRIBUTING.md MAINTAIN.md README.md %{_bindir}/nvim +%dir %{_libdir}/nvim +%dir %{_libdir}/nvim/parser +%{_libdir}/nvim/parser/*.so + %{_mandir}/man1/nvim.1* %{_datadir}/applications/nvim.desktop %{_datadir}/pixmaps/nvim.png diff --git a/sources b/sources index 16a86cf..cc8104d 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ SHA512 (neovim-0.10.0.tar.gz) = 878cb58729a18179b38303bd9cf79e38997c87946665ac4e7b76d87e15f5d001028fd1454ce30b20773b20a4fe929dfa399fc2ec7f6db0774a4e864c9e8586c1 +SHA512 (neovim-0.10.0-vendor.tar.gz) = a6cc2b365cd341f6103e97de8a6027b90e94ed47bf80616e1b2b1447070c762530379ac5f4d789bdd731911902ec0fc9ba7ed896acab1bafbabbcb71d89c191f From 6a5469bc92ba326bbcfb50eed2bbd08beb940a0f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 18 Jul 2024 19:18:47 +0000 Subject: [PATCH 30/60] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 934d086093e696ad59a61ad293cfde751a70a1c7 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Wed, 24 Jul 2024 10:17:19 +0200 Subject: [PATCH 31/60] Update to version 0.10.1 --- .gitignore | 2 ++ README.md | 10 ++++++++++ neovim.spec | 12 +++--------- sources | 4 ++-- 4 files changed, 17 insertions(+), 11 deletions(-) create mode 100644 README.md diff --git a/.gitignore b/.gitignore index 97549f5..83f18c1 100644 --- a/.gitignore +++ b/.gitignore @@ -36,3 +36,5 @@ /neovim-0.9.5.tar.gz /neovim-0.10.0.tar.gz /neovim-0.10.0-vendor.tar.gz +/neovim-0.10.1.tar.gz +/neovim-0.10.1-vendor.tar.gz diff --git a/README.md b/README.md new file mode 100644 index 0000000..e3533c1 --- /dev/null +++ b/README.md @@ -0,0 +1,10 @@ +# neovim + +The hyper-extensible Vim-based text editor + +## Updating the package + +* Update the version in the spec file +* Download the new tarball +* Add the tarball with `fedpkg new-sources neovim-.tar.gz` +* Run `bash mkvendor.sh` diff --git a/neovim.spec b/neovim.spec index a256de2..200eff3 100644 --- a/neovim.spec +++ b/neovim.spec @@ -35,7 +35,7 @@ %endif Name: neovim -Version: 0.10.0 +Version: 0.10.1 Release: %autorelease License: Apache-2.0 AND Vim @@ -72,8 +72,8 @@ BuildRequires: lua5.1-bit32 Requires: lua5.1-luv >= %{luv_min_ver} # /with luajit %endif -Requires: lua5.1-lpeg -BuildRequires: lua5.1-lpeg +Requires: lua5.1-lpeg >= 1.1.0 +BuildRequires: lua5.1-lpeg >= 1.1.0 BuildRequires: lua5.1-mpack >= 1.0.11 %if %{with jemalloc} BuildRequires: jemalloc-devel @@ -374,9 +374,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/queries/c %{_datadir}/nvim/runtime/queries/c/*.scm -%dir %{_datadir}/nvim/runtime/queries/bash -%{_datadir}/nvim/runtime/queries/bash/*.scm - %dir %{_datadir}/nvim/runtime/queries/lua/ %{_datadir}/nvim/runtime/queries/lua/folds.scm %{_datadir}/nvim/runtime/queries/lua/highlights.scm @@ -388,9 +385,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/queries/markdown_inline %{_datadir}/nvim/runtime/queries/markdown_inline/*.scm -%dir %{_datadir}/nvim/runtime/queries/python -%{_datadir}/nvim/runtime/queries/python/*.scm - %dir %{_datadir}/nvim/runtime/queries/query %{_datadir}/nvim/runtime/queries/query/*.scm diff --git a/sources b/sources index cc8104d..6347979 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (neovim-0.10.0.tar.gz) = 878cb58729a18179b38303bd9cf79e38997c87946665ac4e7b76d87e15f5d001028fd1454ce30b20773b20a4fe929dfa399fc2ec7f6db0774a4e864c9e8586c1 -SHA512 (neovim-0.10.0-vendor.tar.gz) = a6cc2b365cd341f6103e97de8a6027b90e94ed47bf80616e1b2b1447070c762530379ac5f4d789bdd731911902ec0fc9ba7ed896acab1bafbabbcb71d89c191f +SHA512 (neovim-0.10.1.tar.gz) = 37e9d45041b059a26fe02717eae7cdbde58f0a35560c590764f5888de67cfa04bee76d6b359ab14b020ac5a661d64908960283347381d334106308504c0df908 +SHA512 (neovim-0.10.1-vendor.tar.gz) = d89dcc059a78a8b3d4695d463daf709a5b3ec46ff02590b78dfad4380ccc86429f365714b0d68757c3f518969c61394312a63065cce630ecfff0e69a4d5a1892 From 50347a7bb4c1d35b786cb9641fae017dd26ee437 Mon Sep 17 00:00:00 2001 From: Damjan 9000 Date: Sat, 17 Aug 2024 18:57:29 +0200 Subject: [PATCH 32/60] resolves: rhbz#2300246 - remove vim runtime path from sysinit --- sysinit.vim | 3 --- 1 file changed, 3 deletions(-) diff --git a/sysinit.vim b/sysinit.vim index bd151fc..21a501d 100644 --- a/sysinit.vim +++ b/sysinit.vim @@ -1,9 +1,6 @@ let g:python_host_prog = '/usr/bin/python2' let g:python3_host_prog = '/usr/bin/python3' -" In order for neovim to use installed plugins shared with vim -set runtimepath+=/usr/share/vim/vimfiles/ - augroup Fedora autocmd! " RPM spec file template From 7e1ae82c0833a8533b482dd8e20e5173f8d20054 Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Sun, 1 Sep 2024 17:39:14 -0400 Subject: [PATCH 33/60] Rebuilt for tree-sitter 0.23.0 From bc6a6be1fd07e38b473414822387e56930090db7 Mon Sep 17 00:00:00 2001 From: Michel Lind Date: Tue, 3 Sep 2024 17:25:04 -0500 Subject: [PATCH 34/60] Allow bundling tree-sitter for EL10 - Add MIT to list of licenses since we are unconditionally bundling tree-sitter parsers - Convert bundled licenses file to SPDX expressions Signed-off-by: Michel Lind --- .gitignore | 1 + mkvendor-treesitter.sh | 27 +++++++++++++++++++++++++++ neovim-bundled-licenses.txt | 2 +- neovim.spec | 25 ++++++++++++++++++++++++- sources | 1 + 5 files changed, 54 insertions(+), 2 deletions(-) create mode 100644 mkvendor-treesitter.sh diff --git a/.gitignore b/.gitignore index 83f18c1..760812a 100644 --- a/.gitignore +++ b/.gitignore @@ -38,3 +38,4 @@ /neovim-0.10.0-vendor.tar.gz /neovim-0.10.1.tar.gz /neovim-0.10.1-vendor.tar.gz +/neovim-0.10.1-vendor-treesitter.tar.gz diff --git a/mkvendor-treesitter.sh b/mkvendor-treesitter.sh new file mode 100644 index 0000000..5ef2d5c --- /dev/null +++ b/mkvendor-treesitter.sh @@ -0,0 +1,27 @@ + #!/usr/bin/bash -x + +set -euo pipefail + +url=$(rpmspec -P neovim.spec | sed -En 's/^Source0:[[:space:]]+//p') +archive=$(basename "$url") +tmp=$(mktemp -d) +trap "rm -rf $tmp" EXIT + +curl -Lo "${tmp}/${archive}" "${url}" +grep -F "${archive}" sources | (cd "${tmp}" && cksum -c) +mkdir -p "${tmp}/src" +tar -zxf "${tmp}/${archive}" -C "${tmp}/src" --strip-components=1 + +cmake -S "${tmp}/src/cmake.deps" -B "${tmp}/deps" -G Ninja \ + -DUSE_BUNDLED=OFF -DUSE_BUNDLED_TS=ON +targets=$(basename -a "${tmp}/deps"/build/downloads/treesitter | \ + xargs -I {} echo build/src/{}-stamp/{}-download) +ninja -C "${tmp}/deps" ${targets} + +mv "${tmp}/${archive}" . +vendor="${archive%.tar.gz}-vendor" +tar -zcf "${vendor}-treesitter.tar.gz" -H pax --numeric-owner --owner=0:0 \ + -C "${tmp}/deps/build/downloads" . --transform="s/^\\./${vendor}-treesitter/" + +echo +echo "Run: fedpkg new-sources ${archive} ${vendor}.tar.gz ${vendor}-treesitter.tar.gz" diff --git a/neovim-bundled-licenses.txt b/neovim-bundled-licenses.txt index fee3e11..e72f40d 100644 --- a/neovim-bundled-licenses.txt +++ b/neovim-bundled-licenses.txt @@ -1,2 +1,2 @@ -"ASL 2.0" +"Apache-2.0" "MIT" diff --git a/neovim.spec b/neovim.spec index 200eff3..40fb19d 100644 --- a/neovim.spec +++ b/neovim.spec @@ -21,8 +21,18 @@ %endif %endif +%if 0%{?el10} +# tree-sitter in EL10 is too old and libtree-sitter-devel is not shipped +# https://issues.redhat.com/browse/RHEL-56996 +%bcond_with system_treesitter +%else +%bcond_without system_treesitter +%endif + %global luv_min_ver 1.43.0 +%if %{with system_treesitter} %global tree_sitter_min_ver 0.22.5 +%endif %global vterm_min_ver 0.3.3 %global luv_include_dir %{_includedir}/luv @@ -38,7 +48,7 @@ Name: neovim Version: 0.10.1 Release: %autorelease -License: Apache-2.0 AND Vim +License: Apache-2.0 AND Vim AND MIT Summary: Vim-fork focused on extensibility and agility Url: https://neovim.io @@ -48,6 +58,7 @@ Source2: spec-template # Generated by mkvendor.sh Source3: %{name}-%{version}-vendor.tar.gz Source4: neovim-bundled-licenses.txt +Source5: %{name}-%{version}-vendor-treesitter.tar.gz Patch1000: neovim-lua-bit32.patch @@ -85,10 +96,12 @@ BuildRequires: pkgconfig(vterm) >= %{vterm_min_ver} # need the build with the fix for the resize buffer issue Requires: libvterm >= %{vterm_min_ver} BuildRequires: pkgconfig(unibilium) +%if %{with system_treesitter} BuildRequires: pkgconfig(tree-sitter) >= %{tree_sitter_min_ver} # tree-sitter didn't do an soname bump. enforce the min version # see https://github.com/nvim-treesitter/nvim-treesitter/pull/3055/files Requires: libtree-sitter >= %{tree_sitter_min_ver} +%endif # Parser generator, only needed for :TSInstallFromGrammar Recommends: tree-sitter-cli Suggests: (python2-neovim if python2) @@ -109,7 +122,14 @@ excisions, Neovim is Vim. It is built for users who want the good parts of Vim, without compromise, and more. %prep +%if %{with system_treesitter} %setup -q -b3 +%else +%setup -q -b3 -b5 + +mv ../%{name}-%{version}-vendor-treesitter/* \ + ../%{name}-%{version}-vendor/ +%endif cp %{SOURCE4} . @@ -129,6 +149,9 @@ ln -sfr ../%{name}-%{version}-vendor .deps/build/downloads %define __cmake_builddir .deps %cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DUSE_BUNDLED=OFF \ +%if %{without system_treesitter} + -DUSE_BUNDLED_TS=ON \ +%endif -DUSE_BUNDLED_TS_PARSERS=ON %cmake_build diff --git a/sources b/sources index 6347979..54b0dda 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ SHA512 (neovim-0.10.1.tar.gz) = 37e9d45041b059a26fe02717eae7cdbde58f0a35560c590764f5888de67cfa04bee76d6b359ab14b020ac5a661d64908960283347381d334106308504c0df908 SHA512 (neovim-0.10.1-vendor.tar.gz) = d89dcc059a78a8b3d4695d463daf709a5b3ec46ff02590b78dfad4380ccc86429f365714b0d68757c3f518969c61394312a63065cce630ecfff0e69a4d5a1892 +SHA512 (neovim-0.10.1-vendor-treesitter.tar.gz) = 4c6e759a06d9022415b4e5ac1029f0cb464b302c585b9bffa71791ec82908812f0b2b9b3a50d021b273930cbb03d5a0e553c6bf0122da0116fc7975330a4aae2 From 6ca81d068789b2e7ebf56b4105c04d147c940139 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Wed, 11 Sep 2024 09:54:22 +0200 Subject: [PATCH 35/60] Use easier to understand %bcond --- neovim.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/neovim.spec b/neovim.spec index 40fb19d..99eea87 100644 --- a/neovim.spec +++ b/neovim.spec @@ -24,9 +24,9 @@ %if 0%{?el10} # tree-sitter in EL10 is too old and libtree-sitter-devel is not shipped # https://issues.redhat.com/browse/RHEL-56996 -%bcond_with system_treesitter +%bcond system_treesitter 0 %else -%bcond_without system_treesitter +%bcond system_treesitter 1 %endif %global luv_min_ver 1.43.0 From 6be59221e324f0ac6e5a0977a45f6646437e0da8 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Sat, 5 Oct 2024 22:33:28 +0200 Subject: [PATCH 36/60] Update to version 0.10.2 - resolves: rhbz#2316441 --- .gitignore | 3 +++ README.md | 1 + neovim.spec | 2 +- sources | 6 +++--- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 760812a..4fbc987 100644 --- a/.gitignore +++ b/.gitignore @@ -39,3 +39,6 @@ /neovim-0.10.1.tar.gz /neovim-0.10.1-vendor.tar.gz /neovim-0.10.1-vendor-treesitter.tar.gz +/neovim-0.10.2.tar.gz +/neovim-0.10.2-vendor.tar.gz +/neovim-0.10.2-vendor-treesitter.tar.gz diff --git a/README.md b/README.md index e3533c1..3e9397f 100644 --- a/README.md +++ b/README.md @@ -8,3 +8,4 @@ The hyper-extensible Vim-based text editor * Download the new tarball * Add the tarball with `fedpkg new-sources neovim-.tar.gz` * Run `bash mkvendor.sh` +* Run `bash mkvendor-treesitter.sh` diff --git a/neovim.spec b/neovim.spec index 99eea87..1a8db19 100644 --- a/neovim.spec +++ b/neovim.spec @@ -45,7 +45,7 @@ %endif Name: neovim -Version: 0.10.1 +Version: 0.10.2 Release: %autorelease License: Apache-2.0 AND Vim AND MIT diff --git a/sources b/sources index 54b0dda..20ff560 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (neovim-0.10.1.tar.gz) = 37e9d45041b059a26fe02717eae7cdbde58f0a35560c590764f5888de67cfa04bee76d6b359ab14b020ac5a661d64908960283347381d334106308504c0df908 -SHA512 (neovim-0.10.1-vendor.tar.gz) = d89dcc059a78a8b3d4695d463daf709a5b3ec46ff02590b78dfad4380ccc86429f365714b0d68757c3f518969c61394312a63065cce630ecfff0e69a4d5a1892 -SHA512 (neovim-0.10.1-vendor-treesitter.tar.gz) = 4c6e759a06d9022415b4e5ac1029f0cb464b302c585b9bffa71791ec82908812f0b2b9b3a50d021b273930cbb03d5a0e553c6bf0122da0116fc7975330a4aae2 +SHA512 (neovim-0.10.2.tar.gz) = 6478c53bddff0bf042388464fa1c5114e8fe75c7c41b22e5426783bd2f8406bd3297ffd4bc895ea13e573f0cd28a64755c1f5c063531bb8de477c4e439384418 +SHA512 (neovim-0.10.2-vendor.tar.gz) = 59047ccbc4e66e5d706709997350fdf591105bd12440edaf883646f83145b94ee691eaff4dac1e557c19dd09886ba4c155a8abc3cc4e18260cf1fcc61b1a3bac +SHA512 (neovim-0.10.2-vendor-treesitter.tar.gz) = deb0d4243b249267d1b28a69240272c440d53e5a8c6dc025b652f8595b60fa38650b77046eeff084c612cb6ec428d2318e71c1dd6ffff92f70255f365a4280ea From d17ef5cb5214d9173d55918c4ac5360553684b5a Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Sat, 21 Dec 2024 19:29:17 +0100 Subject: [PATCH 37/60] Update to version 0.10.3 - resolves: rhbz#2333681 --- .gitignore | 3 +++ neovim.spec | 2 +- sources | 6 +++--- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 4fbc987..c11b97b 100644 --- a/.gitignore +++ b/.gitignore @@ -42,3 +42,6 @@ /neovim-0.10.2.tar.gz /neovim-0.10.2-vendor.tar.gz /neovim-0.10.2-vendor-treesitter.tar.gz +/neovim-0.10.3.tar.gz +/neovim-0.10.3-vendor.tar.gz +/neovim-0.10.3-vendor-treesitter.tar.gz diff --git a/neovim.spec b/neovim.spec index 1a8db19..b3b2a99 100644 --- a/neovim.spec +++ b/neovim.spec @@ -45,7 +45,7 @@ %endif Name: neovim -Version: 0.10.2 +Version: 0.10.3 Release: %autorelease License: Apache-2.0 AND Vim AND MIT diff --git a/sources b/sources index 20ff560..d63dc93 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (neovim-0.10.2.tar.gz) = 6478c53bddff0bf042388464fa1c5114e8fe75c7c41b22e5426783bd2f8406bd3297ffd4bc895ea13e573f0cd28a64755c1f5c063531bb8de477c4e439384418 -SHA512 (neovim-0.10.2-vendor.tar.gz) = 59047ccbc4e66e5d706709997350fdf591105bd12440edaf883646f83145b94ee691eaff4dac1e557c19dd09886ba4c155a8abc3cc4e18260cf1fcc61b1a3bac -SHA512 (neovim-0.10.2-vendor-treesitter.tar.gz) = deb0d4243b249267d1b28a69240272c440d53e5a8c6dc025b652f8595b60fa38650b77046eeff084c612cb6ec428d2318e71c1dd6ffff92f70255f365a4280ea +SHA512 (neovim-0.10.3.tar.gz) = f1286c42bf0a119fea4575ae64043e43f36cd569d339ced15700c45441e8d8952ea7eac2250063a5aff4552632f0ca7696b442d4d8ffa4f5fce25ddbee0e861b +SHA512 (neovim-0.10.3-vendor.tar.gz) = adab443b56f28fb0dc6908cb9712197bd97fd9f81d14d286b35cfc702304621062fefc1cbc3641cc14f6133b0d5da33f7d367672f911959538e07af906222c9d +SHA512 (neovim-0.10.3-vendor-treesitter.tar.gz) = 7aa042607f9edd7d8543d3dac85bbbc12cb5b0c2c1376d4d5c765c8bab67ca8e04d1ae49a91c1e37d83b7f55e53c1c45087b8c10c7feaefaf864ab7e285ba868 From e6b772eb6e70782f06f87840a8c70bfded3a3436 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Thu, 9 Jan 2025 19:30:43 +0100 Subject: [PATCH 38/60] Fix `:Inspect` --- 31676.patch | 28 ++++++++++++++++++++++++++++ neovim.spec | 3 +++ 2 files changed, 31 insertions(+) create mode 100644 31676.patch diff --git a/31676.patch b/31676.patch new file mode 100644 index 0000000..027c831 --- /dev/null +++ b/31676.patch @@ -0,0 +1,28 @@ +From df3ff92a9a6983512d9f3b08a63fe31e885a2dfd Mon Sep 17 00:00:00 2001 +From: Christian Clason +Date: Sun, 22 Dec 2024 11:02:14 +0100 +Subject: [PATCH] fix(inspect): use correct default highlight + +Problem: `vim.highlight` was renamed on `master`, breaking the +backported fix. + +Solution: Use old name. + +Fixup for 650dcbbafea581353ae75a8377a0b108d1b26761 +--- + runtime/lua/vim/_inspector.lua | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/runtime/lua/vim/_inspector.lua b/runtime/lua/vim/_inspector.lua +index 55e2ae6073a891..9c894d1522ed92 100644 +--- a/runtime/lua/vim/_inspector.lua ++++ b/runtime/lua/vim/_inspector.lua +@@ -186,7 +186,7 @@ function vim.show_pos(bufnr, row, col, filter) + capture, + string.format( + 'priority: %d language: %s', +- capture.metadata.priority or vim.hl.priorities.treesitter, ++ capture.metadata.priority or vim.highlight.priorities.treesitter, + capture.lang + ) + ) diff --git a/neovim.spec b/neovim.spec index b3b2a99..fad8370 100644 --- a/neovim.spec +++ b/neovim.spec @@ -60,6 +60,8 @@ Source3: %{name}-%{version}-vendor.tar.gz Source4: neovim-bundled-licenses.txt Source5: %{name}-%{version}-vendor-treesitter.tar.gz +Patch0: https://github.com/neovim/neovim/pull/31676.patch + Patch1000: neovim-lua-bit32.patch BuildRequires: gcc-c++ @@ -133,6 +135,7 @@ mv ../%{name}-%{version}-vendor-treesitter/* \ cp %{SOURCE4} . +%patch -P 0 -p1 %if %{without luajit} %patch -P 1000 -p1 %endif From 20acc48b36431c40ece2b4610c4479a589d7e3be Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Wed, 15 Jan 2025 09:34:43 +0100 Subject: [PATCH 39/60] Bump release to rebuild neovim [skip changelog] From e87be9dff271465003e2f3757e62cc52561c2108 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 17 Jan 2025 19:53:17 +0000 Subject: [PATCH 40/60] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From c89da3fcf5eeab5789eec35f2f5cf2dd8fff0e48 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Thu, 23 Jan 2025 12:41:16 +0100 Subject: [PATCH 41/60] Fix building with gcc 15 - resolves: rhbz#2340915 --- neovim-fix-build-gcc15.patch | 28 ++++++++++++++++++++++++++++ neovim.spec | 2 ++ 2 files changed, 30 insertions(+) create mode 100644 neovim-fix-build-gcc15.patch diff --git a/neovim-fix-build-gcc15.patch b/neovim-fix-build-gcc15.patch new file mode 100644 index 0000000..e87bb2f --- /dev/null +++ b/neovim-fix-build-gcc15.patch @@ -0,0 +1,28 @@ +From 60592492c589ba8eef4bf929e9f60b7c2ee32eb5 Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Thu, 23 Jan 2025 11:40:10 +0100 +Subject: [PATCH] fix: Remove invalid bool definition + +This causes build failures with gcc 15. +--- + src/mpack/conv.h | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git a/src/mpack/conv.h b/src/mpack/conv.h +index 71f14a067e..e46a2b16d7 100644 +--- a/src/mpack/conv.h ++++ b/src/mpack/conv.h +@@ -14,10 +14,6 @@ typedef mpack_sint32_t mpack_sintmax_t; + typedef mpack_uint32_t mpack_uintmax_t; + #endif + +-#ifndef bool +-# define bool unsigned +-#endif +- + MPACK_API mpack_token_t mpack_pack_nil(void) FUNUSED FPURE; + MPACK_API mpack_token_t mpack_pack_boolean(unsigned v) FUNUSED FPURE; + MPACK_API mpack_token_t mpack_pack_uint(mpack_uintmax_t v) FUNUSED FPURE; +-- +2.48.1 + diff --git a/neovim.spec b/neovim.spec index fad8370..9ddc75b 100644 --- a/neovim.spec +++ b/neovim.spec @@ -61,6 +61,7 @@ Source4: neovim-bundled-licenses.txt Source5: %{name}-%{version}-vendor-treesitter.tar.gz Patch0: https://github.com/neovim/neovim/pull/31676.patch +Patch1: https://github.com/neovim/neovim/pull/32180.patch#/neovim-fix-build-gcc15.patch Patch1000: neovim-lua-bit32.patch @@ -136,6 +137,7 @@ mv ../%{name}-%{version}-vendor-treesitter/* \ cp %{SOURCE4} . %patch -P 0 -p1 +%patch -P 1 -p1 %if %{without luajit} %patch -P 1000 -p1 %endif From 0e5428a4d8d3ad8b35429438c774a7690fef634f Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Wed, 29 Jan 2025 11:54:23 +0100 Subject: [PATCH 42/60] Update to version 0.10.4 - https://github.com/neovim/neovim/releases/tag/v0.10.4 --- .gitignore | 3 +++ 31676.patch | 28 ---------------------------- neovim-fix-build-gcc15.patch | 28 ---------------------------- neovim.spec | 5 +---- sources | 6 +++--- 5 files changed, 7 insertions(+), 63 deletions(-) delete mode 100644 31676.patch delete mode 100644 neovim-fix-build-gcc15.patch diff --git a/.gitignore b/.gitignore index c11b97b..3d5b688 100644 --- a/.gitignore +++ b/.gitignore @@ -45,3 +45,6 @@ /neovim-0.10.3.tar.gz /neovim-0.10.3-vendor.tar.gz /neovim-0.10.3-vendor-treesitter.tar.gz +/neovim-0.10.4.tar.gz +/neovim-0.10.4-vendor.tar.gz +/neovim-0.10.4-vendor-treesitter.tar.gz diff --git a/31676.patch b/31676.patch deleted file mode 100644 index 027c831..0000000 --- a/31676.patch +++ /dev/null @@ -1,28 +0,0 @@ -From df3ff92a9a6983512d9f3b08a63fe31e885a2dfd Mon Sep 17 00:00:00 2001 -From: Christian Clason -Date: Sun, 22 Dec 2024 11:02:14 +0100 -Subject: [PATCH] fix(inspect): use correct default highlight - -Problem: `vim.highlight` was renamed on `master`, breaking the -backported fix. - -Solution: Use old name. - -Fixup for 650dcbbafea581353ae75a8377a0b108d1b26761 ---- - runtime/lua/vim/_inspector.lua | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/runtime/lua/vim/_inspector.lua b/runtime/lua/vim/_inspector.lua -index 55e2ae6073a891..9c894d1522ed92 100644 ---- a/runtime/lua/vim/_inspector.lua -+++ b/runtime/lua/vim/_inspector.lua -@@ -186,7 +186,7 @@ function vim.show_pos(bufnr, row, col, filter) - capture, - string.format( - 'priority: %d language: %s', -- capture.metadata.priority or vim.hl.priorities.treesitter, -+ capture.metadata.priority or vim.highlight.priorities.treesitter, - capture.lang - ) - ) diff --git a/neovim-fix-build-gcc15.patch b/neovim-fix-build-gcc15.patch deleted file mode 100644 index e87bb2f..0000000 --- a/neovim-fix-build-gcc15.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 60592492c589ba8eef4bf929e9f60b7c2ee32eb5 Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Thu, 23 Jan 2025 11:40:10 +0100 -Subject: [PATCH] fix: Remove invalid bool definition - -This causes build failures with gcc 15. ---- - src/mpack/conv.h | 4 ---- - 1 file changed, 4 deletions(-) - -diff --git a/src/mpack/conv.h b/src/mpack/conv.h -index 71f14a067e..e46a2b16d7 100644 ---- a/src/mpack/conv.h -+++ b/src/mpack/conv.h -@@ -14,10 +14,6 @@ typedef mpack_sint32_t mpack_sintmax_t; - typedef mpack_uint32_t mpack_uintmax_t; - #endif - --#ifndef bool --# define bool unsigned --#endif -- - MPACK_API mpack_token_t mpack_pack_nil(void) FUNUSED FPURE; - MPACK_API mpack_token_t mpack_pack_boolean(unsigned v) FUNUSED FPURE; - MPACK_API mpack_token_t mpack_pack_uint(mpack_uintmax_t v) FUNUSED FPURE; --- -2.48.1 - diff --git a/neovim.spec b/neovim.spec index 9ddc75b..b0be00c 100644 --- a/neovim.spec +++ b/neovim.spec @@ -45,7 +45,7 @@ %endif Name: neovim -Version: 0.10.3 +Version: 0.10.4 Release: %autorelease License: Apache-2.0 AND Vim AND MIT @@ -60,9 +60,6 @@ Source3: %{name}-%{version}-vendor.tar.gz Source4: neovim-bundled-licenses.txt Source5: %{name}-%{version}-vendor-treesitter.tar.gz -Patch0: https://github.com/neovim/neovim/pull/31676.patch -Patch1: https://github.com/neovim/neovim/pull/32180.patch#/neovim-fix-build-gcc15.patch - Patch1000: neovim-lua-bit32.patch BuildRequires: gcc-c++ diff --git a/sources b/sources index d63dc93..647c98f 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (neovim-0.10.3.tar.gz) = f1286c42bf0a119fea4575ae64043e43f36cd569d339ced15700c45441e8d8952ea7eac2250063a5aff4552632f0ca7696b442d4d8ffa4f5fce25ddbee0e861b -SHA512 (neovim-0.10.3-vendor.tar.gz) = adab443b56f28fb0dc6908cb9712197bd97fd9f81d14d286b35cfc702304621062fefc1cbc3641cc14f6133b0d5da33f7d367672f911959538e07af906222c9d -SHA512 (neovim-0.10.3-vendor-treesitter.tar.gz) = 7aa042607f9edd7d8543d3dac85bbbc12cb5b0c2c1376d4d5c765c8bab67ca8e04d1ae49a91c1e37d83b7f55e53c1c45087b8c10c7feaefaf864ab7e285ba868 +SHA512 (neovim-0.10.4.tar.gz) = 8dadc24edaaa27e6ecd4db6c19d0183868a8d2809ba122110685f340341d951772ac2eb0c5f7a7ab5f87d3d5d8ae5e81f156c61f04f6d4ebbaa17cd35fb70b64 +SHA512 (neovim-0.10.4-vendor.tar.gz) = 6ea5a3dac50af53aebbf3ebaadf6766f2b2bedcc6b43bca553015847be5311b5fb3803fad7d1bc856b67b77c0d73d8f9a578bc55448d5d845147d4e7b64558a1 +SHA512 (neovim-0.10.4-vendor-treesitter.tar.gz) = b3038b2fde2b1d7183667da0b37ee61e24abb9b17b744ac3c63ce49a299c4026ee2e836237a05044cd2b1bda6a3c1fa572c0199eb632fb0362d6e5e141ca882a From 5d308335d03a1a5190950aa7dad589111dd6bf84 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Mon, 3 Feb 2025 12:23:47 +0000 Subject: [PATCH 43/60] Rebuild against tree-sitter-0.25.1-5.fc42 From 5cdd15f3183e11ff5d4bb19fdea8ca1ab1987571 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Wed, 19 Feb 2025 14:41:58 +0000 Subject: [PATCH 44/60] Rebuild against tree-sitter-0.25.2-3.fc43 From ae2400c6e9b714354159f75fadc321f26e109dec Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Fri, 21 Feb 2025 12:05:06 +0100 Subject: [PATCH 45/60] Rebuild against tree-sitter-0.25.2-3.fc43 From b85d57a54f64f75e93c948ebea7aeda36196c415 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Wed, 26 Mar 2025 15:50:40 +0100 Subject: [PATCH 46/60] Update to version 0.11.0 - https://gpanders.com/blog/whats-new-in-neovim-0-11/ - Check also `:help news` and `:help news-breaking` --- .gitignore | 3 ++ neovim-lua-bit32.patch | 38 ++++++++------ neovim.spec | 112 ++++++++++++++++++----------------------- sources | 6 +-- 4 files changed, 78 insertions(+), 81 deletions(-) diff --git a/.gitignore b/.gitignore index 3d5b688..bfae7ae 100644 --- a/.gitignore +++ b/.gitignore @@ -48,3 +48,6 @@ /neovim-0.10.4.tar.gz /neovim-0.10.4-vendor.tar.gz /neovim-0.10.4-vendor-treesitter.tar.gz +/neovim-0.11.0.tar.gz +/neovim-0.11.0-vendor.tar.gz +/neovim-0.11.0-vendor-treesitter.tar.gz diff --git a/neovim-lua-bit32.patch b/neovim-lua-bit32.patch index 9618c0b..85333e8 100644 --- a/neovim-lua-bit32.patch +++ b/neovim-lua-bit32.patch @@ -1,23 +1,31 @@ -Index: neovim-0.10.0/src/nvim/ex_cmds.lua +Index: neovim-0.11.0/src/nvim/ex_cmds.lua =================================================================== ---- neovim-0.10.0.orig/src/nvim/ex_cmds.lua 2024-05-16 17:22:58.176811996 +0200 -+++ neovim-0.10.0/src/nvim/ex_cmds.lua 2024-05-16 17:23:05.255828571 +0200 +--- neovim-0.11.0.orig/src/nvim/ex_cmds.lua 2025-03-26 18:02:38.217064177 +0100 ++++ neovim-0.11.0/src/nvim/ex_cmds.lua 2025-03-26 18:02:41.424747978 +0100 @@ -1,4 +1,4 @@ -local bit = require 'bit' +local bit = require 'bit32' local M = {} -Index: neovim-0.10.0/src/nvim/generators/gen_ex_cmds.lua +Index: neovim-0.11.0/runtime/lua/vim/lsp/_watchfiles.lua =================================================================== ---- neovim-0.10.0.orig/src/nvim/generators/gen_ex_cmds.lua 2024-05-16 17:22:58.177811999 +0200 -+++ neovim-0.10.0/src/nvim/generators/gen_ex_cmds.lua 2024-05-16 17:23:05.256828573 +0200 -@@ -10,7 +10,7 @@ local defsfname = autodir .. '/ex_cmds_d - local enumfile = io.open(enumfname, 'w') - local defsfile = io.open(defsfname, 'w') - --local bit = require 'bit' -+local bit = require 'bit32' - local ex_cmds = require('ex_cmds') - local defs = ex_cmds.cmds - local flags = ex_cmds.flags +--- neovim-0.11.0.orig/runtime/lua/vim/lsp/_watchfiles.lua 2025-03-26 14:48:09.000000000 +0100 ++++ neovim-0.11.0/runtime/lua/vim/lsp/_watchfiles.lua 2025-03-26 18:04:19.210556853 +0100 +@@ -1,4 +1,4 @@ +-local bit = require('bit') ++local bit = require('bit32') + local glob = vim.glob + local watch = vim._watch + local protocol = require('vim.lsp.protocol') +Index: neovim-0.11.0/runtime/lua/vim/lsp/semantic_tokens.lua +=================================================================== +--- neovim-0.11.0.orig/runtime/lua/vim/lsp/semantic_tokens.lua 2025-03-26 14:48:09.000000000 +0100 ++++ neovim-0.11.0/runtime/lua/vim/lsp/semantic_tokens.lua 2025-03-26 18:04:28.696322064 +0100 +@@ -1,5 +1,5 @@ + local api = vim.api +-local bit = require('bit') ++local bit = require('bit32') + local ms = require('vim.lsp.protocol').Methods + local util = require('vim.lsp.util') + local uv = vim.uv diff --git a/neovim.spec b/neovim.spec index b0be00c..b7306be 100644 --- a/neovim.spec +++ b/neovim.spec @@ -45,7 +45,7 @@ %endif Name: neovim -Version: 0.10.4 +Version: 0.11.0 Release: %autorelease License: Apache-2.0 AND Vim AND MIT @@ -91,11 +91,12 @@ BuildRequires: jemalloc-devel %endif BuildRequires: msgpack-devel >= 3.1.0 BuildRequires: pkgconfig(termkey) -BuildRequires: pkgconfig(libuv) >= 1.42.0 +BuildRequires: pkgconfig(libuv) >= 1.50.0 BuildRequires: pkgconfig(vterm) >= %{vterm_min_ver} # need the build with the fix for the resize buffer issue Requires: libvterm >= %{vterm_min_ver} BuildRequires: pkgconfig(unibilium) +BuildRequires: pkgconfig(libutf8proc) >= 2.10.0 %if %{with system_treesitter} BuildRequires: pkgconfig(tree-sitter) >= %{tree_sitter_min_ver} # tree-sitter didn't do an soname bump. enforce the min version @@ -110,6 +111,7 @@ Suggests: (python3-neovim if python3) Recommends: xsel Recommends: wl-clipboard Recommends: ripgrep +Recommends: inotify-tools %description Neovim is a refactor - and sometimes redactor - in the tradition of @@ -133,8 +135,6 @@ mv ../%{name}-%{version}-vendor-treesitter/* \ cp %{SOURCE4} . -%patch -P 0 -p1 -%patch -P 1 -p1 %if %{without luajit} %patch -P 1000 -p1 %endif @@ -164,7 +164,8 @@ ln -sfr ../%{name}-%{version}-vendor .deps/build/downloads -DPREFER_LUA=%{?with_luajit:OFF}%{!?with_luajit:ON} \ -DLUA_PRG=%{lua_prg} \ -DENABLE_JEMALLOC=%{?with_jemalloc:ON}%{!?with_jemalloc:OFF} \ - -DLIBLUV_INCLUDE_DIR:PATH=%{luv_include_dir} + -DLIBLUV_INCLUDE_DIR:PATH=%{luv_include_dir} \ + -DENABLE_TRANSLATIONS=ON %cmake_build %install @@ -239,9 +240,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/autoload/xml %{_datadir}/nvim/runtime/autoload/xml/*.vim -%dir %{_datadir}/nvim/runtime/autoload/zig -%{_datadir}/nvim/runtime/autoload/zig/*.vim - %dir %{_datadir}/nvim/runtime/colors %{_datadir}/nvim/runtime/colors/*.lua %{_datadir}/nvim/runtime/colors/*.vim @@ -269,33 +267,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/indent/testdir/ %{_datadir}/nvim/runtime/indent/testdir/README.txt -%{_datadir}/nvim/runtime/indent/testdir/bitbake.in -%{_datadir}/nvim/runtime/indent/testdir/bitbake.ok -%{_datadir}/nvim/runtime/indent/testdir/dts.in -%{_datadir}/nvim/runtime/indent/testdir/dts.ok -%{_datadir}/nvim/runtime/indent/testdir/html.in -%{_datadir}/nvim/runtime/indent/testdir/html.ok -%{_datadir}/nvim/runtime/indent/testdir/krl.in -%{_datadir}/nvim/runtime/indent/testdir/krl.ok -%{_datadir}/nvim/runtime/indent/testdir/matlab.in -%{_datadir}/nvim/runtime/indent/testdir/matlab.ok -%{_datadir}/nvim/runtime/indent/testdir/python.in -%{_datadir}/nvim/runtime/indent/testdir/python.ok -%{_datadir}/nvim/runtime/indent/testdir/rapid.in -%{_datadir}/nvim/runtime/indent/testdir/rapid.ok -%{_datadir}/nvim/runtime/indent/testdir/runtest.vim -%{_datadir}/nvim/runtime/indent/testdir/sshconfig.in -%{_datadir}/nvim/runtime/indent/testdir/sshconfig.ok -%{_datadir}/nvim/runtime/indent/testdir/tcl.in -%{_datadir}/nvim/runtime/indent/testdir/tcl.ok -%{_datadir}/nvim/runtime/indent/testdir/vb.in -%{_datadir}/nvim/runtime/indent/testdir/vb.ok -%{_datadir}/nvim/runtime/indent/testdir/vim.in -%{_datadir}/nvim/runtime/indent/testdir/vim.ok -%{_datadir}/nvim/runtime/indent/testdir/xml.in -%{_datadir}/nvim/runtime/indent/testdir/xml.ok -%{_datadir}/nvim/runtime/indent/testdir/yaml.in -%{_datadir}/nvim/runtime/indent/testdir/yaml.ok +%{_datadir}/nvim/runtime/indent/testdir/*.in +%{_datadir}/nvim/runtime/indent/testdir/*.ok +%{_datadir}/nvim/runtime/indent/testdir/*.vim %dir %{_datadir}/nvim/runtime/keymap %{_datadir}/nvim/runtime/keymap/*.vim @@ -304,35 +278,24 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/lua %{_datadir}/nvim/runtime/lua/*.lua -%dir %{_datadir}/nvim/runtime/lua/nvim -%{_datadir}/nvim/runtime/lua/nvim/health.lua - -%dir %{_datadir}/nvim/runtime/lua/provider - -%dir %{_datadir}/nvim/runtime/lua/provider/clipboard -%{_datadir}/nvim/runtime/lua/provider/clipboard/*.lua - -%dir %{_datadir}/nvim/runtime/lua/provider/node -%{_datadir}/nvim/runtime/lua/provider/node/*.lua - -%dir %{_datadir}/nvim/runtime/lua/provider/perl -%{_datadir}/nvim/runtime/lua/provider/perl/*.lua - -%dir %{_datadir}/nvim/runtime/lua/provider/python -%{_datadir}/nvim/runtime/lua/provider/python/*.lua - -%dir %{_datadir}/nvim/runtime/lua/provider/ruby -%{_datadir}/nvim/runtime/lua/provider/ruby/*.lua - %dir %{_datadir}/nvim/runtime/lua/vim %{_datadir}/nvim/runtime/lua/vim/*.lua +%dir %{_datadir}/nvim/runtime/lua/vim/_ftplugin +%{_datadir}/nvim/runtime/lua/vim/_ftplugin/*.lua + %dir %{_datadir}/nvim/runtime/lua/vim/_meta %{_datadir}/nvim/runtime/lua/vim/_meta/*.lua +%dir %{_datadir}/nvim/runtime/lua/vim/deprecated +%{_datadir}/nvim/runtime/lua/vim/deprecated/health.lua + %dir %{_datadir}/nvim/runtime/lua/vim/filetype %{_datadir}/nvim/runtime/lua/vim/filetype/*.lua +%dir %{_datadir}/nvim/runtime/lua/vim/health +%{_datadir}/nvim/runtime/lua/vim/health/*.lua + %dir %{_datadir}/nvim/runtime/lua/vim/func %{_datadir}/nvim/runtime/lua/vim/func/*.lua @@ -348,15 +311,13 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/lua/vim/treesitter %{_datadir}/nvim/runtime/lua/vim/treesitter/*.lua +%dir %{_datadir}/nvim/runtime/lua/vim/treesitter/_meta +%{_datadir}/nvim/runtime/lua/vim/treesitter/_meta/*.lua + %dir %{_datadir}/nvim/runtime/lua/vim/ui %dir %{_datadir}/nvim/runtime/lua/vim/ui/clipboard %{_datadir}/nvim/runtime/lua/vim/ui/clipboard/*.lua -%dir %{_datadir}/nvim/runtime/macros -%{_datadir}/nvim/runtime/macros/*.vim -%{_datadir}/nvim/runtime/macros/less.bat -%{_datadir}/nvim/runtime/macros/less.sh - %dir %{_datadir}/nvim/runtime/pack %dir %{_datadir}/nvim/runtime/pack/dist %dir %{_datadir}/nvim/runtime/pack/dist/opt @@ -369,6 +330,28 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/pack/dist/opt/justify/plugin %{_datadir}/nvim/runtime/pack/dist/opt/justify/plugin/*.vim +%dir %{_datadir}/nvim/runtime/pack/dist/opt/netrw +%{_datadir}/nvim/runtime/pack/dist/opt/netrw/LICENSE.txt +%{_datadir}/nvim/runtime/pack/dist/opt/netrw/README.md + +%dir %{_datadir}/nvim/runtime/pack/dist/opt/netrw/autoload +%{_datadir}/nvim/runtime/pack/dist/opt/netrw/autoload/*.vim + +%dir %{_datadir}/nvim/runtime/pack/dist/opt/netrw/doc +%{_datadir}/nvim/runtime/pack/dist/opt/netrw/doc/*.txt +%{_datadir}/nvim/runtime/pack/dist/opt/netrw/doc/tags + +%dir %{_datadir}/nvim/runtime/pack/dist/opt/netrw/plugin +%{_datadir}/nvim/runtime/pack/dist/opt/netrw/plugin/*.vim + +%dir %{_datadir}/nvim/runtime/pack/dist/opt/netrw/syntax +%{_datadir}/nvim/runtime/pack/dist/opt/netrw/syntax/*.vim + +%dir %{_datadir}/nvim/runtime/pack/dist/opt/nohlsearch + +%dir %{_datadir}/nvim/runtime/pack/dist/opt/nohlsearch/plugin +%{_datadir}/nvim/runtime/pack/dist/opt/nohlsearch/plugin/*.vim + %dir %{_datadir}/nvim/runtime/pack/dist/opt/shellmenu %dir %{_datadir}/nvim/runtime/pack/dist/opt/shellmenu/plugin %{_datadir}/nvim/runtime/pack/dist/opt/shellmenu/plugin/*.vim @@ -419,6 +402,12 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/queries/vimdoc/ %{_datadir}/nvim/runtime/queries/vimdoc/*.scm +%dir %{_datadir}/nvim/runtime/scripts +%{_datadir}/nvim/runtime/scripts/*.lua +%{_datadir}/nvim/runtime/scripts/*.vim +%{_datadir}/nvim/runtime/scripts/less.bat +%{_datadir}/nvim/runtime/scripts/less.sh + %dir %{_datadir}/nvim/runtime/spell %{_datadir}/nvim/runtime/spell/cleanadd.vim %{_datadir}/nvim/runtime/spell/en.utf-8.spl @@ -439,9 +428,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/shared/*.vim %{_datadir}/nvim/runtime/syntax/shared/README.txt -%dir %{_datadir}/nvim/runtime/tools -%{_datadir}/nvim/runtime/tools/*.vim - %dir %{_datadir}/nvim/runtime/tutor %{_datadir}/nvim/runtime/tutor/tutor.tutor %{_datadir}/nvim/runtime/tutor/tutor.tutor.json diff --git a/sources b/sources index 647c98f..2384d59 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (neovim-0.10.4.tar.gz) = 8dadc24edaaa27e6ecd4db6c19d0183868a8d2809ba122110685f340341d951772ac2eb0c5f7a7ab5f87d3d5d8ae5e81f156c61f04f6d4ebbaa17cd35fb70b64 -SHA512 (neovim-0.10.4-vendor.tar.gz) = 6ea5a3dac50af53aebbf3ebaadf6766f2b2bedcc6b43bca553015847be5311b5fb3803fad7d1bc856b67b77c0d73d8f9a578bc55448d5d845147d4e7b64558a1 -SHA512 (neovim-0.10.4-vendor-treesitter.tar.gz) = b3038b2fde2b1d7183667da0b37ee61e24abb9b17b744ac3c63ce49a299c4026ee2e836237a05044cd2b1bda6a3c1fa572c0199eb632fb0362d6e5e141ca882a +SHA512 (neovim-0.11.0.tar.gz) = f898aebffa1d222cdbbc2663b69a6ea55a045c3ddb4e8454bda7b0c6e9abbfc60dce6ea235f535506f6caac9cc1b07c65bdab25374f320cfabc3744336989cf6 +SHA512 (neovim-0.11.0-vendor.tar.gz) = 32d611eea34dc99ab0de0dff82c1dbbe352cd931e324cb1640691409d2113142d42d5f9faf70d1a82dbc19dbedbce6a22c4ab448374fa8c9c813675ed82d30c1 +SHA512 (neovim-0.11.0-vendor-treesitter.tar.gz) = 6f88608f64a01d487122d3d68bddf0edbeb175b9cb4c9e1aa004d577c8c51a0211b6e2ac4df2de4d8e8629dd6a3ad7e045bd9a038907afdd1a6595341abcfeb3 From f52bcdabda2af64fe89ad8dab0e3c341771d8379 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Mon, 14 Apr 2025 12:25:46 +0100 Subject: [PATCH 47/60] Rebuild against tree-sitter-0.25.3-1.fc43 From 090e80c01a2182fab82be19984075316a8a684b4 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Sat, 26 Apr 2025 20:57:38 +0200 Subject: [PATCH 48/60] Update to version 0.11.1 - https://github.com/neovim/neovim/releases/tag/v0.11.1 --- .gitignore | 3 +++ neovim.spec | 2 +- sources | 6 +++--- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index bfae7ae..9bf4440 100644 --- a/.gitignore +++ b/.gitignore @@ -51,3 +51,6 @@ /neovim-0.11.0.tar.gz /neovim-0.11.0-vendor.tar.gz /neovim-0.11.0-vendor-treesitter.tar.gz +/neovim-0.11.1.tar.gz +/neovim-0.11.1-vendor.tar.gz +/neovim-0.11.1-vendor-treesitter.tar.gz diff --git a/neovim.spec b/neovim.spec index b7306be..303cb74 100644 --- a/neovim.spec +++ b/neovim.spec @@ -45,7 +45,7 @@ %endif Name: neovim -Version: 0.11.0 +Version: 0.11.1 Release: %autorelease License: Apache-2.0 AND Vim AND MIT diff --git a/sources b/sources index 2384d59..5010779 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (neovim-0.11.0.tar.gz) = f898aebffa1d222cdbbc2663b69a6ea55a045c3ddb4e8454bda7b0c6e9abbfc60dce6ea235f535506f6caac9cc1b07c65bdab25374f320cfabc3744336989cf6 -SHA512 (neovim-0.11.0-vendor.tar.gz) = 32d611eea34dc99ab0de0dff82c1dbbe352cd931e324cb1640691409d2113142d42d5f9faf70d1a82dbc19dbedbce6a22c4ab448374fa8c9c813675ed82d30c1 -SHA512 (neovim-0.11.0-vendor-treesitter.tar.gz) = 6f88608f64a01d487122d3d68bddf0edbeb175b9cb4c9e1aa004d577c8c51a0211b6e2ac4df2de4d8e8629dd6a3ad7e045bd9a038907afdd1a6595341abcfeb3 +SHA512 (neovim-0.11.1.tar.gz) = d2dac85379022e939a6a5ac8b64074d1e4a6d3605791b916e1d77366b97a28ee9f99107e4c251d5a28a5f515fa8bcde9cc6372a9d7901832de3ee01fb9895f4d +SHA512 (neovim-0.11.1-vendor.tar.gz) = 6ad10fb40c70087320bf32e793ed5be3ad10e369ea097d9d62a8b8e28f6a87d689b1d255413804f50949ed712c7e4d7c889bdc2457bbc301484cf4944fced4a1 +SHA512 (neovim-0.11.1-vendor-treesitter.tar.gz) = 0e1f195100197dbf7413136d0d17f794ec30f2426dd7577c18133b0a3514ccd262330e7a91c1778434885c0724397376f1e16c6e788a967ebd1a5e0ca1b95527 From c2d626944cb9dba2b334b98349a27df895d3261f Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Mon, 12 May 2025 14:03:56 +0100 Subject: [PATCH 49/60] Rebuild against tree-sitter-0.25.4-3.fc43 From 3a235a9d60129abdadb1076d610b54075a8ec4a8 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Wed, 28 May 2025 13:01:39 +0100 Subject: [PATCH 50/60] Rebuild against tree-sitter-0.25.5-1.fc43 From b197cc44abc81df17936f86d0c9e42ecc5ec7179 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Tue, 3 Jun 2025 10:23:15 +0200 Subject: [PATCH 51/60] Update to version 0.11.2 - resolves: rhbz#2362455 --- .gitignore | 3 +++ neovim.spec | 4 ++-- sources | 6 +++--- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 9bf4440..05220de 100644 --- a/.gitignore +++ b/.gitignore @@ -54,3 +54,6 @@ /neovim-0.11.1.tar.gz /neovim-0.11.1-vendor.tar.gz /neovim-0.11.1-vendor-treesitter.tar.gz +/neovim-0.11.2.tar.gz +/neovim-0.11.2-vendor.tar.gz +/neovim-0.11.2-vendor-treesitter.tar.gz diff --git a/neovim.spec b/neovim.spec index 303cb74..7d1699d 100644 --- a/neovim.spec +++ b/neovim.spec @@ -45,7 +45,7 @@ %endif Name: neovim -Version: 0.11.1 +Version: 0.11.2 Release: %autorelease License: Apache-2.0 AND Vim AND MIT @@ -213,7 +213,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime %{_datadir}/nvim/runtime/*.vim -%{_datadir}/nvim/runtime/filetype.lua +%{_datadir}/nvim/runtime/*.lua %{_datadir}/nvim/runtime/neovim.ico %dir %{_datadir}/nvim/runtime/autoload diff --git a/sources b/sources index 5010779..ccfbaf0 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (neovim-0.11.1.tar.gz) = d2dac85379022e939a6a5ac8b64074d1e4a6d3605791b916e1d77366b97a28ee9f99107e4c251d5a28a5f515fa8bcde9cc6372a9d7901832de3ee01fb9895f4d -SHA512 (neovim-0.11.1-vendor.tar.gz) = 6ad10fb40c70087320bf32e793ed5be3ad10e369ea097d9d62a8b8e28f6a87d689b1d255413804f50949ed712c7e4d7c889bdc2457bbc301484cf4944fced4a1 -SHA512 (neovim-0.11.1-vendor-treesitter.tar.gz) = 0e1f195100197dbf7413136d0d17f794ec30f2426dd7577c18133b0a3514ccd262330e7a91c1778434885c0724397376f1e16c6e788a967ebd1a5e0ca1b95527 +SHA512 (neovim-0.11.2.tar.gz) = eeb543ff40b71f384c3a8d964c05e20b4d8be2f647314da703f071954a6f434320b0a61c0a42936c71c970de018de654d8c0e15de92890b9dc50054c5b70b863 +SHA512 (neovim-0.11.2-vendor.tar.gz) = b9d8629ea3134ca15fdf8c15007c81e11ff03b3f7f1db514a5afa67a50ec993b1f4f49af236e95f8a391df5e99ef386086f65f7839d849ac38eedd846dc1223a +SHA512 (neovim-0.11.2-vendor-treesitter.tar.gz) = 7d24436f9f7e2a5dbb85e09262232baaa55bf0f1ff82d39981e352bc51378716cce34759160293e7255de20673fbadf5038665837b85898acbf1d965a6981fcc From bf419f09abed77999410f997985d6c90c933edc7 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Fri, 13 Jun 2025 15:38:04 +0100 Subject: [PATCH 52/60] Rebuild against tree-sitter-0.25.6-1.fc43 From 84454ea7e5768c764254621cfaeac9f500f28243 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Sun, 13 Jul 2025 09:05:38 +0200 Subject: [PATCH 53/60] Update to version 0.11.3 --- .gitignore | 3 +++ neovim.spec | 14 +++++++------- sources | 6 +++--- 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/.gitignore b/.gitignore index 05220de..4048e05 100644 --- a/.gitignore +++ b/.gitignore @@ -57,3 +57,6 @@ /neovim-0.11.2.tar.gz /neovim-0.11.2-vendor.tar.gz /neovim-0.11.2-vendor-treesitter.tar.gz +/neovim-0.11.3.tar.gz +/neovim-0.11.3-vendor.tar.gz +/neovim-0.11.3-vendor-treesitter.tar.gz diff --git a/neovim.spec b/neovim.spec index 7d1699d..32cb9b5 100644 --- a/neovim.spec +++ b/neovim.spec @@ -45,7 +45,7 @@ %endif Name: neovim -Version: 0.11.2 +Version: 0.11.3 Release: %autorelease License: Apache-2.0 AND Vim AND MIT @@ -429,16 +429,16 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/shared/README.txt %dir %{_datadir}/nvim/runtime/tutor -%{_datadir}/nvim/runtime/tutor/tutor.tutor -%{_datadir}/nvim/runtime/tutor/tutor.tutor.json +%{_datadir}/nvim/runtime/tutor/*.tutor +%{_datadir}/nvim/runtime/tutor/*.tutor.json %dir %{_datadir}/nvim/runtime/tutor/en -%{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor -%{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json +%{_datadir}/nvim/runtime/tutor/en/*.tutor +%{_datadir}/nvim/runtime/tutor/en/*.tutor.json %dir %{_datadir}/nvim/runtime/tutor/ja -%{_datadir}/nvim/runtime/tutor/ja/vim-01-beginner.tutor -%{_datadir}/nvim/runtime/tutor/ja/vim-01-beginner.tutor.json +%{_datadir}/nvim/runtime/tutor/ja/*.tutor +%{_datadir}/nvim/runtime/tutor/ja/*.tutor.json %changelog %autochangelog diff --git a/sources b/sources index ccfbaf0..6caa44e 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (neovim-0.11.2.tar.gz) = eeb543ff40b71f384c3a8d964c05e20b4d8be2f647314da703f071954a6f434320b0a61c0a42936c71c970de018de654d8c0e15de92890b9dc50054c5b70b863 -SHA512 (neovim-0.11.2-vendor.tar.gz) = b9d8629ea3134ca15fdf8c15007c81e11ff03b3f7f1db514a5afa67a50ec993b1f4f49af236e95f8a391df5e99ef386086f65f7839d849ac38eedd846dc1223a -SHA512 (neovim-0.11.2-vendor-treesitter.tar.gz) = 7d24436f9f7e2a5dbb85e09262232baaa55bf0f1ff82d39981e352bc51378716cce34759160293e7255de20673fbadf5038665837b85898acbf1d965a6981fcc +SHA512 (neovim-0.11.3.tar.gz) = 30be325ea364369c242d1ccc7067ccda4c64e4f89198431d1a22ad04213fd7a9aba01d41e9c7c7c35c73883e575d3e09bb928d8e450ad484814165ca1390d995 +SHA512 (neovim-0.11.3-vendor.tar.gz) = 65e11af8c8de8096ba8bcf4b08371a168ace608a30b9176c80ab57d2832aeb2ae1f05411f998f864a5ee35693fb7a0c8b1e42d71bdf2579cc99162049d6d51c8 +SHA512 (neovim-0.11.3-vendor-treesitter.tar.gz) = 5e2419f11ddf554d53942738a35057cb367c90808067294c4ae40b7bde44eb89da5e4d9c7df9a7297b132df9cd010ce093e6c286906fd0961f783a8863f4150e From 52fc733a74235f56ea54dfb25aabb42a4394fd25 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Fri, 18 Jul 2025 12:52:51 +0100 Subject: [PATCH 54/60] Rebuild against tree-sitter-0.25.8-1.fc43 From 496aab5614bdfd4d612dd85cf2b6dbbc57b36f63 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 24 Jul 2025 22:43:14 +0000 Subject: [PATCH 55/60] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 235cefbde993230668fb047a6038053573a913cf Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Tue, 2 Sep 2025 10:09:06 +0200 Subject: [PATCH 56/60] Update to version 0.11.4 - https://github.com/neovim/neovim/releases/tag/v0.11.4 - resolves: rhbz#2392274 --- .gitignore | 3 +++ neovim.spec | 9 ++++++++- sources | 6 +++--- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 4048e05..e9ab9ed 100644 --- a/.gitignore +++ b/.gitignore @@ -60,3 +60,6 @@ /neovim-0.11.3.tar.gz /neovim-0.11.3-vendor.tar.gz /neovim-0.11.3-vendor-treesitter.tar.gz +/neovim-0.11.4.tar.gz +/neovim-0.11.4-vendor.tar.gz +/neovim-0.11.4-vendor-treesitter.tar.gz diff --git a/neovim.spec b/neovim.spec index 32cb9b5..7f53068 100644 --- a/neovim.spec +++ b/neovim.spec @@ -45,7 +45,7 @@ %endif Name: neovim -Version: 0.11.3 +Version: 0.11.4 Release: %autorelease License: Apache-2.0 AND Vim AND MIT @@ -278,6 +278,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/lua %{_datadir}/nvim/runtime/lua/*.lua +%dir %{_datadir}/nvim/runtime/lua/nvim +%{_datadir}/nvim/runtime/lua/nvim/*.lua + %dir %{_datadir}/nvim/runtime/lua/vim %{_datadir}/nvim/runtime/lua/vim/*.lua @@ -440,5 +443,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/ja/*.tutor %{_datadir}/nvim/runtime/tutor/ja/*.tutor.json +%dir %{_datadir}/nvim/runtime/tutor/zh +%{_datadir}/nvim/runtime/tutor/zh/*.tutor +%{_datadir}/nvim/runtime/tutor/zh/*.tutor.json + %changelog %autochangelog diff --git a/sources b/sources index 6caa44e..a78f5d4 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (neovim-0.11.3.tar.gz) = 30be325ea364369c242d1ccc7067ccda4c64e4f89198431d1a22ad04213fd7a9aba01d41e9c7c7c35c73883e575d3e09bb928d8e450ad484814165ca1390d995 -SHA512 (neovim-0.11.3-vendor.tar.gz) = 65e11af8c8de8096ba8bcf4b08371a168ace608a30b9176c80ab57d2832aeb2ae1f05411f998f864a5ee35693fb7a0c8b1e42d71bdf2579cc99162049d6d51c8 -SHA512 (neovim-0.11.3-vendor-treesitter.tar.gz) = 5e2419f11ddf554d53942738a35057cb367c90808067294c4ae40b7bde44eb89da5e4d9c7df9a7297b132df9cd010ce093e6c286906fd0961f783a8863f4150e +SHA512 (neovim-0.11.4.tar.gz) = 15eafa31cfee04f72f87ca442382d79a5c1f2e7699709cd1f713196a09425c55bca0587afc206488c528fa707515f12f8e2bc91460126c77ab3bc8e776deba76 +SHA512 (neovim-0.11.4-vendor.tar.gz) = 7fdca462883ab3bfdaaa7aeb1beb9380c2eb537a61a6e4fb9dacde3d7a58c423af50a11dbf62579d3034453c1a595b821fccb49419f6fa935a765a2fc7b41045 +SHA512 (neovim-0.11.4-vendor-treesitter.tar.gz) = 3721bd4954df4bc47dfe9a217979cf9721b4753c4a5e2e7d153762fdb0a283251aefe03d697bd68f9497c50710de266f607ad772a6a6f6db1699a9d6941c912b From 5ad696d19c93205a29a5d6b4644de3551dde1218 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Tue, 9 Sep 2025 14:40:02 +0100 Subject: [PATCH 57/60] Rebuild against tree-sitter-0.25.9-1.fc44 From 708ec7ad796d7a1807bffade47643eea342c0bd6 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Wed, 24 Sep 2025 15:20:54 +0100 Subject: [PATCH 58/60] Rebuild against tree-sitter-0.25.10-1.fc44 From 26b14788aae9912a259ae1b21896c8695459d66f Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Sun, 12 Oct 2025 17:30:53 +0200 Subject: [PATCH 59/60] Don't write logfiles when refreshing helptags - resolves: rhbz#2402743 --- neovim.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/neovim.spec b/neovim.spec index 7f53068..a882337 100644 --- a/neovim.spec +++ b/neovim.spec @@ -187,11 +187,11 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ # Refresh documentation helptags. %transfiletriggerin -- %{_datadir}/nvim/runtime/doc -%{_bindir}/nvim -u NONE -es -c ":helptags %{_datadir}/nvim/runtime/doc" -c ":q" &> /dev/null || : +NVIM_LOG_FILE=/dev/null %{_bindir}/nvim -u NONE -es -c ":helptags %{_datadir}/nvim/runtime/doc" -c ":q" &> /dev/null || : %transfiletriggerpostun -- %{_datadir}/nvim/runtime/doc > %{_datadir}/nvim/runtime/doc/tags || : -%{_bindir}/nvim -u NONE -es -c ":helptags %{_datadir}/nvim/runtime/doc" -c ":q" &> /dev/null || : +NVIM_LOG_FILE=/dev/null %{_bindir}/nvim -u NONE -es -c ":helptags %{_datadir}/nvim/runtime/doc" -c ":q" &> /dev/null || : %files -f nvim.lang %license LICENSE.txt neovim-bundled-licenses.txt From f861fee0b375762a798aca83b520223d198cbabf Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Mon, 3 Nov 2025 09:41:38 +0100 Subject: [PATCH 60/60] Update to version 0.11.5 resolves: rhbz#2411913 --- .gitignore | 2 ++ README.md | 1 - mkvendor-treesitter.sh | 27 ---------------- mkvendor.sh | 73 ++++++++++++++++++++++++++++++------------ neovim.spec | 10 +----- sources | 5 ++- 6 files changed, 58 insertions(+), 60 deletions(-) delete mode 100644 mkvendor-treesitter.sh diff --git a/.gitignore b/.gitignore index e9ab9ed..5f5dba2 100644 --- a/.gitignore +++ b/.gitignore @@ -63,3 +63,5 @@ /neovim-0.11.4.tar.gz /neovim-0.11.4-vendor.tar.gz /neovim-0.11.4-vendor-treesitter.tar.gz +/neovim-0.11.5.tar.gz +/neovim-0.11.5-vendor.tar.gz diff --git a/README.md b/README.md index 3e9397f..e3533c1 100644 --- a/README.md +++ b/README.md @@ -8,4 +8,3 @@ The hyper-extensible Vim-based text editor * Download the new tarball * Add the tarball with `fedpkg new-sources neovim-.tar.gz` * Run `bash mkvendor.sh` -* Run `bash mkvendor-treesitter.sh` diff --git a/mkvendor-treesitter.sh b/mkvendor-treesitter.sh deleted file mode 100644 index 5ef2d5c..0000000 --- a/mkvendor-treesitter.sh +++ /dev/null @@ -1,27 +0,0 @@ - #!/usr/bin/bash -x - -set -euo pipefail - -url=$(rpmspec -P neovim.spec | sed -En 's/^Source0:[[:space:]]+//p') -archive=$(basename "$url") -tmp=$(mktemp -d) -trap "rm -rf $tmp" EXIT - -curl -Lo "${tmp}/${archive}" "${url}" -grep -F "${archive}" sources | (cd "${tmp}" && cksum -c) -mkdir -p "${tmp}/src" -tar -zxf "${tmp}/${archive}" -C "${tmp}/src" --strip-components=1 - -cmake -S "${tmp}/src/cmake.deps" -B "${tmp}/deps" -G Ninja \ - -DUSE_BUNDLED=OFF -DUSE_BUNDLED_TS=ON -targets=$(basename -a "${tmp}/deps"/build/downloads/treesitter | \ - xargs -I {} echo build/src/{}-stamp/{}-download) -ninja -C "${tmp}/deps" ${targets} - -mv "${tmp}/${archive}" . -vendor="${archive%.tar.gz}-vendor" -tar -zcf "${vendor}-treesitter.tar.gz" -H pax --numeric-owner --owner=0:0 \ - -C "${tmp}/deps/build/downloads" . --transform="s/^\\./${vendor}-treesitter/" - -echo -echo "Run: fedpkg new-sources ${archive} ${vendor}.tar.gz ${vendor}-treesitter.tar.gz" diff --git a/mkvendor.sh b/mkvendor.sh index c030923..69152c9 100644 --- a/mkvendor.sh +++ b/mkvendor.sh @@ -1,28 +1,61 @@ - #!/usr/bin/bash -x +#!/usr/bin/bash -x set -euo pipefail -url=$(rpmspec -P neovim.spec | sed -En 's/^Source0:[[:space:]]+//p') -archive=$(basename "$url") -tmp=$(mktemp -d) -trap "rm -rf $tmp" EXIT +nvim_url="$(rpmspec -P neovim.spec | sed -En 's/^Source0:[[:space:]]+//p')" +nvim_archive="$(basename "$nvim_url")" +nvim_tmpdir="$(mktemp --tmpdir -d nvim-XXXXXXXX)" +nvim_srcdir="$(pwd)" -curl -Lo "${tmp}/${archive}" "${url}" -grep -F "${archive}" sources | (cd "${tmp}" && cksum -c) -mkdir -p "${tmp}/src" -tar -zxf "${tmp}/${archive}" -C "${tmp}/src" --strip-components=1 +cleanup_tmpdir() { + popd 2>/dev/null || true + rm -rf "${nvim_tmpdir}" +} +trap cleanup_tmpdir SIGINT -cmake -S "${tmp}/src/cmake.deps" -B "${tmp}/deps" -G Ninja \ - -DUSE_BUNDLED=OFF -DUSE_BUNDLED_TS_PARSERS=ON -targets=$(basename -a "${tmp}/deps"/build/downloads/treesitter_* | \ - xargs -I {} echo build/src/{}-stamp/{}-download) -ninja -C "${tmp}/deps" ${targets} +cleanup_and_exit() { + cleanup_tmpdir + if test "$1" = 0 -o -z "$1" ; then + exit 0 + else + exit "${1}" + fi +} -mv "${tmp}/${archive}" . -vendor="${archive%.tar.gz}-vendor" -tar -zcf "${vendor}.tar.gz" -H pax --numeric-owner --owner=0:0 \ - -C "${tmp}/deps/build/downloads" . --transform="s/^\\./${vendor}/" +if [ ! -w "${nvim_archive}" ]; then + curl -Lo "${nvim_archive}" "${nvim_url}" + fedpkg new-sources "${nvim_archive}" +fi + +mkdir -p "${nvim_tmpdir}/src" +tar -zxf "${nvim_srcdir}/${nvim_archive}" -C "${nvim_tmpdir}/src" --strip-components=1 + +pushd "${nvim_tmpdir}" || cleanup_and_exit 1 + +cmake \ + -S "${nvim_tmpdir}/src/cmake.deps" \ + -B "${nvim_tmpdir}/deps" -G Ninja \ + -DUSE_BUNDLED=OFF \ + -DUSE_BUNDLED_TS=ON \ + -DUSE_BUNDLED_TS_PARSERS=ON + +readarray -t targets < <(basename -a "${nvim_tmpdir}/deps/build/downloads/"treesitter* | \ + xargs -I {} echo build/src/{}-stamp/{}-download) +ninja -C "${nvim_tmpdir}/deps" "${targets[@]}" + +nvim_vendor="${nvim_archive%.tar.gz}-vendor" +nvim_vendor_archive="${nvim_vendor}.tar.gz" +tar -zcf "${nvim_srcdir}/${nvim_vendor_archive}" \ + -H pax \ + --numeric-owner \ + --owner=0:0 \ + -C "${nvim_tmpdir}/deps/build/downloads" . \ + --transform="s/^\\./${nvim_vendor}/" +popd + +cksum -a sha512 "${nvim_archive}" "${nvim_vendor_archive}" | tee sources -cksum -a sha512 "${archive}" "${vendor}.tar.gz" | tee sources echo -echo "Run: fedpkg new-sources ${archive} ${vendor}.tar.gz" +echo "Run: fedpkg new-sources ${nvim_archive} ${nvim_vendor_archive}" + +cleanup_and_exit 0 diff --git a/neovim.spec b/neovim.spec index a882337..d3e5009 100644 --- a/neovim.spec +++ b/neovim.spec @@ -45,7 +45,7 @@ %endif Name: neovim -Version: 0.11.4 +Version: 0.11.5 Release: %autorelease License: Apache-2.0 AND Vim AND MIT @@ -58,7 +58,6 @@ Source2: spec-template # Generated by mkvendor.sh Source3: %{name}-%{version}-vendor.tar.gz Source4: neovim-bundled-licenses.txt -Source5: %{name}-%{version}-vendor-treesitter.tar.gz Patch1000: neovim-lua-bit32.patch @@ -124,14 +123,7 @@ excisions, Neovim is Vim. It is built for users who want the good parts of Vim, without compromise, and more. %prep -%if %{with system_treesitter} %setup -q -b3 -%else -%setup -q -b3 -b5 - -mv ../%{name}-%{version}-vendor-treesitter/* \ - ../%{name}-%{version}-vendor/ -%endif cp %{SOURCE4} . diff --git a/sources b/sources index a78f5d4..2bb5bca 100644 --- a/sources +++ b/sources @@ -1,3 +1,2 @@ -SHA512 (neovim-0.11.4.tar.gz) = 15eafa31cfee04f72f87ca442382d79a5c1f2e7699709cd1f713196a09425c55bca0587afc206488c528fa707515f12f8e2bc91460126c77ab3bc8e776deba76 -SHA512 (neovim-0.11.4-vendor.tar.gz) = 7fdca462883ab3bfdaaa7aeb1beb9380c2eb537a61a6e4fb9dacde3d7a58c423af50a11dbf62579d3034453c1a595b821fccb49419f6fa935a765a2fc7b41045 -SHA512 (neovim-0.11.4-vendor-treesitter.tar.gz) = 3721bd4954df4bc47dfe9a217979cf9721b4753c4a5e2e7d153762fdb0a283251aefe03d697bd68f9497c50710de266f607ad772a6a6f6db1699a9d6941c912b +SHA512 (neovim-0.11.5.tar.gz) = 1b2bb241261eefd195275e28bb9ebe4102261d61d8b7fe38ccebad7131ccc38d29fae8494d511b4c440ad71ef95dc405a2ba6e98b5d47426f215c8137c8bc91f +SHA512 (neovim-0.11.5-vendor.tar.gz) = 388e8afb7919d89c7bceab3f03a49909ef307c3c2ac29d9899f5e30e475c18d453010290cc8929e5cae0a1252b2b7056a5d2bedfc9a3f3a12c0530aa52e14b0c