Accepting request 929735 from editors

- Updated to version 8.2.3582, fixes the following problems
  * Overflow check fails with 32 ints.
  * Manipulating highlighting is complicated.
  * CI sometimes fails for MinGW.
  * gj does not move properly with a wide character.
  * Reading character past end of line.
  * Reading uninitialized memory when giving spell suggestions.
- add obsolete/conflict with nginx vim plugin 

- Updated to version 8.2.3577, fixes the following problems
  * Test_very_large_count fails on 32bit systems.
  * Some unicode control characters are considered printable.
  * Memory leak when closing window and using "multispace" in 'listchars'.
  * Cannot decide whether to skip test that fails with 64 bit ints. (closes
  #9072)
  * Divide by zero.
  * Overflow check still fails when sizeof(int) == sizeof(long).
  * Some functions are not documented for use with a method.
  * Overflow check fails with 32 ints.

- Current vim seems to have timing problems with its parser to
  distinguish between <ESC> and <ESC>[~3 at least in urxvt 

- fix boo#1192225 

- Updated to version 8.2.3570, fixes the following problems
  * CTRL-I in Insert mode is not tested
  * Ctrl-hat test fails with Athena and Motif. (Elimar Riesebieter)
  * Error for :let when vimrc is Vim 9 script.
  * Test_very_large_count fails on 32bit systems.

OBS-URL: https://build.opensuse.org/request/show/929735
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/vim?expand=0&rev=292
This commit is contained in:
Dominique Leuenberger 2021-11-09 22:53:48 +00:00 committed by Git OBS Bridge
commit 0da1ecfd91
9 changed files with 382 additions and 30 deletions

View File

@ -34,7 +34,7 @@ Index: vim-8.2.3318/src/testdir/Make_all.mak
test_regex_char_classes \
test_regexp_latin \
test_regexp_utf8 \
@@ -459,7 +452,6 @@ NEW_TESTS_RES = \
@@ -458,7 +451,6 @@ NEW_TESTS_RES = \
test_quickfix.res \
test_quotestar.res \
test_random.res \

View File

@ -10,7 +10,7 @@ Index: vim-8.2.3075/src/testdir/Make_all.mak
test_balloon_gui \
test_behave \
test_blob \
@@ -203,7 +202,6 @@ NEW_TESTS = \
@@ -204,7 +203,6 @@ NEW_TESTS = \
test_netbeans \
test_normal \
test_number \
@ -18,7 +18,15 @@ Index: vim-8.2.3075/src/testdir/Make_all.mak
test_packadd \
test_partial \
test_paste \
@@ -323,7 +320,6 @@ NEW_TESTS_RES = \
@@ -262,7 +260,6 @@ NEW_TESTS = \
test_stat \
test_statusline \
test_substitute \
- test_suspend \
test_swap \
test_syn_attr \
test_syntax \
@@ -324,7 +321,6 @@ NEW_TESTS_RES = \
test_autocmd.res \
test_autoload.res \
test_backspace_opt.res \
@ -26,6 +34,14 @@ Index: vim-8.2.3075/src/testdir/Make_all.mak
test_balloon_gui.res \
test_blob.res \
test_blockedit.res \
@@ -490,7 +486,6 @@ NEW_TESTS_RES = \
test_stat.res \
test_statusline.res \
test_substitute.res \
- test_suspend.res \
test_swap.res \
test_syn_attr.res \
test_syntax.res \
Index: vim-8.2.3075/src/testdir/Makefile
===================================================================
--- vim-8.2.3075.orig/src/testdir/Makefile

View File

@ -1,13 +0,0 @@
Index: vim-8.2.2411/src/globals.h
===================================================================
--- vim-8.2.2411.orig/src/globals.h
+++ vim-8.2.2411/src/globals.h
@@ -1315,7 +1315,7 @@ extern char *Version;
#if defined(HAVE_DATE_TIME) && defined(VMS) && defined(VAXC)
extern char longVersion[];
#else
-EXTERN char *longVersion INIT(= NULL);
+extern char *longVersion;
#endif
/*

View File

@ -292,8 +292,10 @@ endif
" This escape sequence is the well known ANSI sequence for
" Remove Character Under The Cursor (RCUTC[tm])
map! <Esc>[3~ <Delete>
map <ESC>[3~ x
if !has("gui_running") && myterm == "xterm"
map! <Esc>[3~ <Delete>
map <ESC>[3~ x
endif
" Only do this part when compiled with support for autocommands.
if has("autocmd")

View File

@ -1,6 +1,2 @@
from Config import *
addFilter("vim-data.* devel-file-in-non-devel-package")
addFilter("vim-data.* file-not-in-%lang")
addFilter("vim-base.* package-with-huge-docs")

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f96135fa2c4675bfdbdf69d7f307665ed2ce707755f7c09ca8121ff3ce4334be
size 15710399

3
vim-8.2.3582.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:363a90e45eb93c73340a711223c7ce5e564432f9eb34624e1a545f4fd57dd49d
size 15778667

View File

@ -1,3 +1,244 @@
-------------------------------------------------------------------
Fri Nov 5 17:51:31 UTC 2021 - Ondřej Súkup <mimi.vx@gmail.com>
- Updated to version 8.2.3582, fixes the following problems
* Overflow check fails with 32 ints.
* Manipulating highlighting is complicated.
* CI sometimes fails for MinGW.
* gj does not move properly with a wide character.
* Reading character past end of line.
* Reading uninitialized memory when giving spell suggestions.
- add obsolete/conflict with nginx vim plugin
-------------------------------------------------------------------
Wed Nov 3 17:31:20 UTC 2021 - Ondřej Súkup <mimi.vx@gmail.com>
- Updated to version 8.2.3577, fixes the following problems
* Test_very_large_count fails on 32bit systems.
* Some unicode control characters are considered printable.
* Memory leak when closing window and using "multispace" in 'listchars'.
* Cannot decide whether to skip test that fails with 64 bit ints. (closes
#9072)
* Divide by zero.
* Overflow check still fails when sizeof(int) == sizeof(long).
* Some functions are not documented for use with a method.
* Overflow check fails with 32 ints.
-------------------------------------------------------------------
Wed Nov 3 15:16:18 UTC 2021 - Dr. Werner Fink <werner@suse.de>
- Current vim seems to have timing problems with its parser to
distinguish between <ESC> and <ESC>[~3 at least in urxvt
-------------------------------------------------------------------
Tue Nov 2 12:42:28 UTC 2021 - Ondřej Súkup <mimi.vx@gmail.com>
- fix boo#1192225
-------------------------------------------------------------------
Tue Nov 2 11:57:45 UTC 2021 - Ondřej Súkup <mimi.vx@gmail.com>
- Updated to version 8.2.3570, fixes the following problems
* CTRL-I in Insert mode is not tested
* Ctrl-hat test fails with Athena and Motif. (Elimar Riesebieter)
* Error for :let when vimrc is Vim 9 script.
* Test_very_large_count fails on 32bit systems.
-------------------------------------------------------------------
Tue Nov 2 09:50:30 UTC 2021 - Dr. Werner Fink <werner@suse.de>
- Avoid the second to parse the Delete ANSI sequence in gvim
-------------------------------------------------------------------
Sun Oct 31 10:11:52 UTC 2021 - Ondřej Súkup <mimi.vx@gmail.com>
- Updated to version 8.2.3567, fixes the following problems
* Xxd revert does not handle end of line correctly.
* Xxd has various way to exit.
* ModeChanged is not triggered on every mode change.
* Filler lines are incorrect for other window in diff mode after making
a change.
* Vim9: cannot call imported funcref at script level.
* Vim9: asserting the wrong variable.
* Loop variable recreated every time.
* Using freed memory with lambda.
* Cscope has a complicated way of giving an error message.
* Cannot add color names.
* Build failure with +eval but without GUI or +termguicolors
* Invalid memory access when scrolling without a valid screen.
* Makefile dependencies are outdated. (Gary Johnson)
* Build failure on old systems when using nano timestamp.
* CTRL-I in Insert mode is not tested
-------------------------------------------------------------------
Fri Oct 22 14:53:00 UTC 2021 - Stefan Schubert <schubi@suse.de>
- Use libalternatives instead of update-alternatives.
- Test_suspend disabled temporary.
Updated patches:
disable-unreliable-tests-arch.patch, disable-unreliable-tests.patch
-------------------------------------------------------------------
Fri Oct 22 13:53:00 UTC 2021 - Ondřej Súkup <mimi.vx@gmail.com>
- Updated to version 8.2.3552, fixes the following problems
* Vim9: need more tests for empty string arguments.
* Some type casts are not needed.
* Cannot distinguish Normal and Terminal-Normal mode.
* The ModeChanged event only uses one character for the new_mode and
old_mode values.
* Pattern matching with ModeChanged not tested.
* nginx files are not recognized.
* Cannot detect insert scroll mode.
* Completion submode not indicated for virtual replace.
* CursorHoldI event interferes with "CTRL-G U". (Naohiro Ono)
* Problem with :cd when editing file in non-existent directory. (Yee
Cheng Chin)
* Some files with json syntax are not recognized.
* Crash with error in :catch and also in :finally.
* Crash when using CTRL-T after an empty search pattern.
* Other crashes with empty search pattern not tested.
* Some files with tcl syntax are not recognized.
* Some places use "Vimscript" instead of "Vim script".
* Expression register set by not executed put command.
* Renaming a buffer on startup may cause using freed memory.
* Startup test fails on MS-Windows.
* Still crash with error in :catch and also in :finally.
* Crash when calling job_start with an invalid argument. (Virginia Senioria)
* Test does not fail without the fix for a crash.
* Failures when char is unsigned.
* Reading beyond end of line ending in quote and backslash.
* #ifdef for using sysinfo() is incomplete.
* Crash when going through spell suggestions.
* Python 3 test fails with Python 3.10.
* Illegal memory access with invalid sequence of commands.
* Illegal memory access if buffer name is very long.
* Issue template is not easy to use.
* ml_get error after search with range.
* Superfluous return statements.
* xpm2 filetype dection is not so good.
* Crash when pasting too many times.
* Large count test fails on MS-Windows.
* Illegal memory access in utf_head_off.
* GUI geometry startup test fails on some systems. (Drew Vogel)
* Put test fails when run by itself.
* Recover test may fail on some systems.
* GUI geometry startup test fails.
* tmux filetype dection is incomplete
* Cannot enter password in shell command.
* Vim9: using g:pat:cmd is confusing.
* Vim9: warning for signed vs unsigned.
* Vim9: build failure without the +eval feature.
* Vim9: special cases for "g" and "s" insufficiently tested.
* Generating proto files may fail.
* Vim9: bad separators for "g" and "s" insufficiently tested.
* Undo file is not synced. (Sami Farin)
* Changes are only detected with one second accuracy.
* Vim9: entry for loop variable is created every round.
* Timestamp test fails on some systems.
* Using freed memory when using a timer and searching. (Dominique Pellé)
* Autoread test with nano second time sometimes fails.
* Nano time test fails on Mac and FreeBSD.
* Terminal window does not have transparent background when 'termguicolors'
is used.
* TextChanged does not trigger after TextChangedI.
* Test_xrestore sometimes fails.
* TOML files are not recognized.
* Cannot define a function for thesaurus completion.
* Options completion test fails.
* Cannot use \x and \u when setting 'listchars'.
* Duplicated code in xxd.
* GUI: ligatures are not used.
* Option variable name does not match option name. (Christ van Willigen)
* Tests have clumsy check for X11 based GUI.
* Gcc complains about uninitialized variable. (Tony Mechelynck)
* 'thesaurus' and 'thesaurusfunc' do not have the same scope.
* Xxd usage output is incomplete.
* ":buf \{a}" fails while ":edit \{a}" works.
* Command line completion test fails on MS-Windows.
* The previous '' mark is restored after moving the cursor to the original
jump position. (Tony Chen)
* Inefficient code in xxd.
* Autoread test is a bit flaky.
* If-else indenting is confusing.
* The do_highlight() function is way too long.
* mode() does not return the right value in 'operatorfunc'.
* Else-if indenting is confusing.
* GTK3: with 'rightleft' set scrollbar may move unintentionally.
* The mark '] is wrong after put with a count. (Naohiro Ono)
* Compiler warning for unused variable in tiny version.
* Too many comments are old style.
* Swapname has double slash when 'directory' ends in double slash. (Shane
Smith)
* Unix: may leak file descriptor when using a non-existing directory.
* setcellwidths() may make 'listchars' or 'fillchars' invalid.
* Build failure without the +eval feature.
* Opening the quickfix window triggers BufWinEnter twice. (Yorick Peterse)
* GTK GUI crashen when reading from stdin.
* Mistakes in test comments.
* completion() does not work properly.
* Checking first character of url twice.
* Xxd revert does not handle end of line correctly.
-------------------------------------------------------------------
Fri Oct 1 08:42:38 UTC 2021 - Ondřej Súkup <mimi.vx@gmail.com>
- updated vim-7.4-rpmlintrc
- drop no-common.patch
- Updated to version 8.2.3459, fixes the following problems
* Can delete a numbered function. (Naohiro Ono)
* Reading beyond end of line with invalid utf-8 character.
* Crash with linebreak, listchars and large tabstop.
* Vim9: crash when using base name of import. (Naohiro Ono)
* Vim9: importing the wrong file.
* Vim9: too many characters are allowed in import name.
* fullcommand() gives the wrong name if there is a buffer-local user
command. (Naohiro Ono)
* Vim9: Not all function argument types are properly checked.
* Second error is reported while exception is being thrown.
* Vim9: a failing debug expression aborts script sourcing.
* Garbage collection while evaluating may cause trouble.
* A failing debug expression may make Vim unusable.
* _REENTRANT defined more than once.
* A bit of code is not covered by tests.
* Vim9: no failure if return type differs from returned variable.
* Vim9: list += list creates a new list in :def function.
* A sequence of spaces is hard to see in list mode.
* Warning for using uninitialized variable.
* Crash when deleting a listener in a listener callback. (Naohiro Ono)
* Double free when list is copied.
* Using freed memory when replacing. (Dhiraj Mishra)
* Leaking memory when assigning to list or dict.
* No generic way to trigger an autocommand on mode change.
* Completion for :disas sorts local functions first.
* Octave/Matlab filetype detection does not work properly.
* :delcommand does not take a -buffer option.
* Function prototype for trigger_modechanged() is incomplete.
* Vim9: dict is not passed to dict function.
* Check for optional bool type has confusing return type.
* Compiler warnings for 32/64 bit usage.
* Cannot manipulate blobs.
* Deleted lines go to wrong yank register.
* Recover test fails if there is an old swap file.
* Vim9: || and && are not handled at compile time when possible.
* Vim9: memory leak when and/or fails.
* concealed text not revealed when leaving insert mode. (Michael Soyka)
* On Solaris longVersion may be declared twice. (Vladimir Marek)
* Not enough tests for empty string arguments.
* A couple of declarations are not ANSI C.
* :endtry after function call that throws not found.
* Sort fails if the sort compare function returns 999.
* Coveralls action fails.
* Not all apache files are recognized.
* MPD files are not recognized.
* Autocmd not executed when editing a directory ending in a path separator
inside try block.
* Using a count with "gp" leave cursor in wrong position. (Naohiro Ono)
* Using a count with "gp" leaves '] in wrong position. (Naohiro Ono)
* Vim9: Not all functions are tested with an empty string argument.
* Not all dictdconf files are recognized.
* Vim9: need more tests for empty string arguments.
-------------------------------------------------------------------
Fri Sep 17 10:34:34 UTC 2021 - Dr. Werner Fink <werner@suse.de>

120
vim.spec
View File

@ -17,12 +17,19 @@
%define pkg_version 8.2
%define patchlevel 3408
%define patchlevel 3582
%define patchlevel_compact %{patchlevel}
%define VIM_SUBDIR vim82
%define site_runtimepath %{_datadir}/vim/site
%define make make VIMRCLOC=%{_sysconfdir} VIMRUNTIMEDIR=%{_datadir}/vim/current MAKE="make -e" %{?_smp_mflags}
%bcond_without python2
%if 0%{?suse_version} > 1500
%bcond_without libalternatives
%else
%bcond_with libalternatives
%endif
Name: vim
Version: %{pkg_version}.%{patchlevel_compact}
Release: 0
@ -71,7 +78,6 @@ Patch100: vim73-no-static-libpython.patch
Patch101: vim-8.0.1568-defaults.patch
# https://github.com/vim/vim/issues/3348 - problem more probadly in buildenv than in test
Patch102: vim-8.1.0297-dump3.patch
Patch103: no-common.patch
Patch104: vim-8.2.2411-globalvimrc.patch
BuildRequires: autoconf
BuildRequires: db-devel
@ -91,8 +97,12 @@ BuildRequires: pkgconfig(lua)
BuildRequires: pkgconfig(python3)
BuildRequires: pkgconfig(xt)
Requires: vim-data-common = %{version}-%{release}
%if %{with libalternatives}
Requires: alts
%else
Requires(post): update-alternatives
Requires(postun):update-alternatives
%endif
Recommends: vim-data = %{version}-%{release}
Conflicts: vim-base < 8.2
Provides: vi
@ -117,11 +127,15 @@ file name completion, block operations, and editing of binary data.
%package data
Summary: Data files needed for extended vim functionality
# Used to be in vim-plugins package
Group: Productivity/Text/Editors
Requires: vim-data-common = %{version}-%{release}
# Used to be in vim-plugins package
Obsoletes: vim-plugin-matchit <= 1.13.2
Provides: vim-plugin-matchit = 1.13.2
# conflicts with nginx own plugin
Obsoletes: vim-plugin-nginx < %{version}
Provides: vim-plugin-nginx = %{version}
BuildArch: noarch
%description data
@ -140,8 +154,13 @@ Summary: A GUI for Vi
Group: Productivity/Text/Editors
Requires: gvim_client
Requires: vim-data = %{version}-%{release}
%if %{with libalternatives}
BuildRequires: alts
Requires: alts
%else
Requires(post): update-alternatives
Requires(postun):update-alternatives
%endif
Conflicts: gvim < 8.2
Provides: gvim-base = %{version}-%{release}
Provides: gvim-enhanced = %{version}-%{release}
@ -160,8 +179,13 @@ want less features, you might want to install vim instead.
%package small
Summary: Vim with reduced features
Group: Productivity/Text/Editors
%if %{with libalternatives}
BuildRequires: alts
Requires: alts
%else
Requires(post): update-alternatives
Requires(postun):update-alternatives
%endif
Provides: vi
Provides: vim_client
Requires: vim-data-common = %{version}-%{release}
@ -195,7 +219,6 @@ cp %{SOURCE23} runtime/syntax/apparmor.vim
%patch100 -p1
%patch101 -p1
%patch102 -p1
%patch103 -p1
%patch104 -p1
cp %{SOURCE3} %{SOURCE4} %{SOURCE5} %{SOURCE8} %{SOURCE10} .
@ -312,9 +335,46 @@ done
# install vim
install -D -m 0755 vim-small %{buildroot}%{_bindir}/vim-small
install -D -m 0755 vim-nox11 %{buildroot}%{_bindir}/vim-nox11
%if ! %{with libalternatives}
mkdir -p %{buildroot}%{_sysconfdir}/alternatives
ln -s -f %{_sysconfdir}/alternatives/vim %{buildroot}%{_bindir}/vim
ln -s -f %{_sysconfdir}/alternatives/vi %{buildroot}%{_bindir}/vi
%else
ln -sf %{_bindir}/alts %{buildroot}%{_bindir}/vi
ln -sf %{_bindir}/alts %{buildroot}%{_bindir}/vim
mkdir -p %{buildroot}%{_datadir}/libalternatives/vi
cat > %{buildroot}%{_datadir}/libalternatives/vi/20.conf <<EOF
binary=%{_bindir}/vim-nox11
group=vim, vi
options=KeepArgv0
EOF
cat > %{buildroot}%{_datadir}/libalternatives/vi/30.conf <<EOF
binary=%{_bindir}/gvim
group=vim, vi
options=KeepArgv0
EOF
cat > %{buildroot}%{_datadir}/libalternatives/vi/19.conf <<EOF
binary=%{_bindir}/vim-small
group=vim, vi
options=KeepArgv0
EOF
mkdir -p %{buildroot}%{_datadir}/libalternatives/vim
cat > %{buildroot}%{_datadir}/libalternatives/vim/20.conf <<EOF
binary=%{_bindir}/vim-nox11
group=vim, vi
options=KeepArgv0
EOF
cat > %{buildroot}%{_datadir}/libalternatives/vim/30.conf <<EOF
binary=%{_bindir}/gvim
group=vim, vi
options=KeepArgv0
EOF
cat > %{buildroot}%{_datadir}/libalternatives/vim/19.conf <<EOF
binary=%{_bindir}/vim-small
group=vim, vi
options=KeepArgv0
EOF
%endif
# compat symlinks
mkdir %{buildroot}/bin
@ -430,6 +490,32 @@ LC_ALL=en_US.UTF-8 make -j1 test || { echo "Ignore transient errors for PowerPC.
LC_ALL=en_US.UTF-8 make -j1 test
%endif
%if %{with libalternatives}
# with libalternatives
%pre
# removing old update-alternatives entries
if [ "$1" -gt 0 ] && [ -f %{_sbindir}/update-alternatives ] && [ ! -e %{_bindir}/vim-nox11 ]; then
%{_sbindir}/update-alternatives --remove vim %{_bindir}/vim-nox11
fi
%pre -n gvim
if [ "$1" -gt 0 ] && [ -f %{_sbindir}/update-alternatives ] && [ ! -e %{_bindir}/gvim ] ; then
%{_sbindir}/update-alternatives --remove vim %{_bindir}/gvim
fi
%pre small
if [ "$1" -gt 0 ] && [ -f %{_sbindir}/update-alternatives ] && [ ! -e %{_bindir}/vim-small ]; then
%{_sbindir}/update-alternatives --remove vim %{_bindir}/vim-small
fi
%post -n gvim
%icon_theme_cache_post
%postun -n gvim
%icon_theme_cache_postun
%else
# without libalternatives
%post
%{_sbindir}/update-alternatives \
--install %{_bindir}/vim vim %{_bindir}/vim-nox11 20 \
@ -462,10 +548,19 @@ fi
if [ ! -e %{_bindir}/vim-small ] ; then
%{_sbindir}/update-alternatives --remove vim %{_bindir}/vim-small
fi
%endif
%files
%if ! %{with libalternatives}
%ghost %{_sysconfdir}/alternatives/vim
%ghost %{_sysconfdir}/alternatives/vi
%else
%dir %{_datadir}/libalternatives
%dir %{_datadir}/libalternatives/vi
%{_datadir}/libalternatives/vi/20.conf
%dir %{_datadir}/libalternatives/vim
%{_datadir}/libalternatives/vim/20.conf
%endif
%{_bindir}/vim-nox11
%{_bindir}/vim
# symlinks
@ -593,13 +688,20 @@ fi
%{_datadir}/vim/%{VIM_SUBDIR}/syntax/syntax.vim
%{_datadir}/vim/%{VIM_SUBDIR}/syntax/vim.vim
%{_datadir}/vim/%{VIM_SUBDIR}/*.vim
%{_datadir}/vim/%{VIM_SUBDIR}/rgb.txt
%files -n gvim
%doc runtime/doc/gui_x11.txt
%ghost %config(missingok) %{_sysconfdir}/gvimrc
%if ! %{with libalternatives}
%ghost %{_sysconfdir}/alternatives/vim
%ghost %{_sysconfdir}/alternatives/vi
%else
%dir %{_datadir}/libalternatives
%dir %{_datadir}/libalternatives/vi
%{_datadir}/libalternatives/vi/30.conf
%dir %{_datadir}/libalternatives/vim
%{_datadir}/libalternatives/vim/30.conf
%endif
%{_bindir}/vi
%{_bindir}/vim
%{_bindir}/egview
@ -620,8 +722,16 @@ fi
%files small
%license LICENSE
%if ! %{with libalternatives}
%ghost %{_sysconfdir}/alternatives/vim
%ghost %{_sysconfdir}/alternatives/vi
%else
%dir %{_datadir}/libalternatives
%dir %{_datadir}/libalternatives/vi
%{_datadir}/libalternatives/vi/19.conf
%dir %{_datadir}/libalternatives/vim
%{_datadir}/libalternatives/vim/19.conf
%endif
%{_bindir}/vi
%{_bindir}/vim
%{_bindir}/vim-small