Bug#860999: unblock: vim/2:8.0.0197-4 (pre-approval)
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
Please unblock package vim
* Update Ubuntu release names in syntax highlighting files
+ Additionally, require word boundaries around release names, so
stretch isn't mishighlighted as (unsupported) etch. (#859247)
* Fix a regression in parsing ctags-generated TAGS files (#859426)
* Set $TERM to a sane value before running tests. This fixes test
failures when $TERM is an atypical value (like "unknown" in the
reproducible builds environment).
(include/attach the debdiff against the package in testing)
unblock vim/2:8.0.0197-4
-- System Information:
Debian Release: 9.0
APT prefers unstable-debug
APT policy: (500, 'unstable-debug'), (500, 'unstable'), (1, 'experimental-debug'), (1, 'experimental')
Architecture: amd64
(x86_64)
Foreign Architectures: i386
Kernel: Linux 4.9.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
diffstat for vim-8.0.0197 vim-8.0.0197
changelog | 12 +
patches/series | 2
patches/upstream/Add-Artful-Aardvark-to-deb-changelog-sources-syntax-files.patch | 76 +++++++
patches/upstream/patch-8.0.0550-cannot-parse-some-etags-format-tags-file.patch | 103 ++++++++++
rules | 3
5 files changed, 195 insertions(+), 1 deletion(-)
diff -Nru vim-8.0.0197/debian/changelog vim-8.0.0197/debian/changelog
--- vim-8.0.0197/debian/changelog 2017-03-06 22:33:23.000000000 -0500
+++ vim-8.0.0197/debian/changelog 2017-04-23 08:10:29.000000000 -0400
@@ -1,3 +1,15 @@
+vim (2:8.0.0197-4) unstable; urgency=medium
+
+ * Backport upstream patch v8.0.0550 to fix a regression in tag lookups for
+ ctags-generated emacs style tags files. (Closes: #859426)
+ * Add Artful Aardvark to deb{changelog,sources} syntax files.
+ * debsources.vim: Require word boundaries around distribution name.
+ (Closes: #859247)
+ * Set $TERM to a known sane value when running tests to avoid test failures
+ due to an unknown $TERM.
+
+ -- James McCoy <jamessan@debian.org> Sun, 23 Apr 2017 08:10:29 -0400
+
vim (2:8.0.0197-3) unstable; urgency=high
* Backport upstream patches v8.0.0377 & v8.0.0378, to fix buffer overflows
diff -Nru vim-8.0.0197/debian/patches/series vim-8.0.0197/debian/patches/series
--- vim-8.0.0197/debian/patches/series 2017-03-06 22:33:23.000000000 -0500
+++ vim-8.0.0197/debian/patches/series 2017-04-23 08:10:29.000000000 -0400
@@ -8,3 +8,5 @@
upstream/patch-8.0.0322-possible-overflow-with-corrupted-spell-fil.patch
upstream/patch-8.0.0377-possible-overflow-when-reading-corrupted-u.patch
upstream/patch-8.0.0378-possible-overflow-when-reading-corrupted-u.patch
+upstream/patch-8.0.0550-cannot-parse-some-etags-format-tags-file.patch
+upstream/Add-Artful-Aardvark-to-deb-changelog-sources-syntax-files.patch
diff -Nru vim-8.0.0197/debian/patches/upstream/Add-Artful-Aardvark-to-deb-changelog-sources-syntax-files.patch vim-8.0.0197/debian/patches/upstream/Add-Artful-Aardvark-to-deb-changelog-sources-syntax-files.patch
--- vim-8.0.0197/debian/patches/upstream/Add-Artful-Aardvark-to-deb-changelog-sources-syntax-files.patch 1969-12-31 19:00:00.000000000 -0500
+++ vim-8.0.0197/debian/patches/upstream/Add-Artful-Aardvark-to-deb-changelog-sources-syntax-files.patch 2017-04-23 08:10:29.000000000 -0400
@@ -0,0 +1,76 @@
+From: James McCoy <jamessan@debian.org>
+Date: Sat, 22 Apr 2017 13:43:32 -0400
+Subject: Add Artful Aardvark to deb{changelog,sources} syntax files
+
+Require word boundary around distribution name.
+
+Closes: #859247
+Signed-off-by: James McCoy <jamessan@debian.org>
+---
+ runtime/syntax/debchangelog.vim | 4 ++--
+ runtime/syntax/debsources.vim | 10 +++++-----
+ 2 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/runtime/syntax/debchangelog.vim b/runtime/syntax/debchangelog.vim
+index eb02aaf..691420f 100644
+--- a/runtime/syntax/debchangelog.vim
++++ b/runtime/syntax/debchangelog.vim
+@@ -3,7 +3,7 @@
+ " Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
+ " Former Maintainers: Gerfried Fuchs <alfie@ist.org>
+ " Wichert Akkerman <wakkerma@debian.org>
+-" Last Change: 2016 Nov 12
++" Last Change: 2017 Apr 22
+ " URL: https://anonscm.debian.org/cgit/pkg-vim/vim.git/plain/runtime/syntax/debchangelog.vim
+
+ " Standard syntax initialization
+@@ -21,7 +21,7 @@ let binNMU='binary-only=yes'
+ syn match debchangelogName contained "^[[:alnum:]][[:alnum:].+-]\+ "
+ exe 'syn match debchangelogFirstKV contained "; \('.urgency.'\|'.binNMU.'\)"'
+ exe 'syn match debchangelogOtherKV contained ", \('.urgency.'\|'.binNMU.'\)"'
+-syn match debchangelogTarget contained "\v %(frozen|unstable|sid|%(testing|%(old)=stable)%(-proposed-updates|-security)=|experimental|squeeze-%(backports%(-sloppy)=|volatile|lts|security)|wheezy-%(backports%(-sloppy)=|security)|jessie%(-backports|-security)=|stretch|%(devel|precise|trusty|vivid|wily|xenial|yakkety|zesty)%(-%(security|proposed|updates|backports|commercial|partner))=)+"
++syn match debchangelogTarget contained "\v %(frozen|unstable|sid|%(testing|%(old)=stable)%(-proposed-updates|-security)=|experimental|squeeze-%(backports%(-sloppy)=|volatile|lts|security)|wheezy-%(backports%(-sloppy)=|security)|jessie%(-backports|-security)=|stretch|%(devel|precise|trusty|vivid|wily|xenial|yakkety|zesty|artful)%(-%(security|proposed|updates|backports|commercial|partner))=)+"
+ syn match debchangelogVersion contained "(.\{-})"
+ syn match debchangelogCloses contained "closes:\_s*\(bug\)\=#\=\_s\=\d\+\(,\_s*\(bug\)\=#\=\_s\=\d\+\)*"
+ syn match debchangelogLP contained "\clp:\s\+#\d\+\(,\s*#\d\+\)*"
+diff --git a/runtime/syntax/debsources.vim b/runtime/syntax/debsources.vim
+index 390c430..4fa80de 100644
+--- a/runtime/syntax/debsources.vim
++++ b/runtime/syntax/debsources.vim
+@@ -2,7 +2,7 @@
+ " Language: Debian sources.list
+ " Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
+ " Former Maintainer: Matthijs Mohlmann <matthijs@cacholong.nl>
+-" Last Change: 2016 Nov 12
++" Last Change: 2017 Apr 22
+ " URL: https://anonscm.debian.org/cgit/pkg-vim/vim.git/plain/runtime/syntax/debsources.vim
+
+ " Standard syntax initialization
+@@ -25,7 +25,7 @@ let s:supported = [
+ \ 'oldstable', 'stable', 'testing', 'unstable', 'experimental',
+ \ 'squeeze', 'wheezy', 'jessie', 'stretch', 'sid', 'rc-buggy',
+ \
+- \ 'precise', 'trusty', 'xenial', 'yakkety', 'zesty', 'devel'
++ \ 'trusty', 'xenial', 'yakkety', 'zesty', 'artful', 'devel'
+ \ ]
+ let s:unsupported = [
+ \ 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato',
+@@ -33,15 +33,15 @@ let s:unsupported = [
+ \
+ \ 'warty', 'hoary', 'breezy', 'dapper', 'edgy', 'feisty',
+ \ 'gutsy', 'hardy', 'intrepid', 'jaunty', 'karmic', 'lucid',
+- \ 'maverick', 'natty', 'oneiric', 'quantal', 'raring', 'saucy',
++ \ 'maverick', 'natty', 'oneiric', 'precise', 'quantal', 'raring', 'saucy',
+ \ 'utopic', 'vivid', 'wily'
+ \ ]
+ let &cpo=s:cpo
+
+ " Match uri's
+ syn match debsourcesUri +\(https\?://\|ftp://\|[rs]sh://\|debtorrent://\|\(cdrom\|copy\|file\):\)[^' <>"]\++
+-exe 'syn match debsourcesDistrKeyword +\([[:alnum:]_./]*\)\('. join(s:supported, '\|'). '\)\([-[:alnum:]_./]*\)+'
+-exe 'syn match debsourcesUnsupportedDistrKeyword +\([[:alnum:]_./]*\)\('. join(s:unsupported, '\|') .'\)\([-[:alnum:]_./]*\)+'
++exe 'syn match debsourcesDistrKeyword +\([[:alnum:]_./]*\)\<\('. join(s:supported, '\|'). '\)\>\([-[:alnum:]_./]*\)+'
++exe 'syn match debsourcesUnsupportedDistrKeyword +\([[:alnum:]_./]*\)\<\('. join(s:unsupported, '\|') .'\)\>\([-[:alnum:]_./]*\)+'
+
+ " Associate our matches and regions with pretty colours
+ hi def link debsourcesLine Error
diff -Nru vim-8.0.0197/debian/patches/upstream/patch-8.0.0550-cannot-parse-some-etags-format-tags-file.patch vim-8.0.0197/debian/patches/upstream/patch-8.0.0550-cannot-parse-some-etags-format-tags-file.patch
--- vim-8.0.0197/debian/patches/upstream/patch-8.0.0550-cannot-parse-some-etags-format-tags-file.patch 1969-12-31 19:00:00.000000000 -0500
+++ vim-8.0.0197/debian/patches/upstream/patch-8.0.0550-cannot-parse-some-etags-format-tags-file.patch 2017-04-23 08:10:29.000000000 -0400
@@ -0,0 +1,103 @@
+From: Bram Moolenaar <Bram@vim.org>
+Date: Fri, 7 Apr 2017 20:30:29 +0200
+Subject: patch 8.0.0550: cannot parse some etags format tags file
+
+Problem: Some etags format tags file use 0x01, breaking the parsing.
+Solution: Use 0x02 for TAG_SEP. (James McCoy, closes #1614)
+
+Signed-off-by: James McCoy <jamessan@debian.org>
+---
+ src/tag.c | 13 +++++++------
+ src/testdir/test_taglist.vim | 39 +++++++++++++++++++++++++++++++++++++++
+ src/version.c | 2 ++
+ 3 files changed, 48 insertions(+), 6 deletions(-)
+ create mode 100644 src/testdir/test_taglist.vim
+
+diff --git a/src/tag.c b/src/tag.c
+index a80a362..80b21c1 100644
+--- a/src/tag.c
++++ b/src/tag.c
+@@ -2335,18 +2335,19 @@ parse_line:
+ }
+ else
+ {
+-#define TAG_SEP 0x01
++#define TAG_SEP 0x02
+ size_t tag_fname_len = STRLEN(tag_fname);
+ #ifdef FEAT_EMACS_TAGS
+ size_t ebuf_len = 0;
+ #endif
+
+ /* Save the tag in a buffer.
+- * Use 0x01 to separate fields (Can't use NUL, because the
+- * hash key is terminated by NUL).
+- * Emacs tag: <mtt><tag_fname><0x01><ebuf><0x01><lbuf><NUL>
+- * other tag: <mtt><tag_fname><0x01><0x01><lbuf><NUL>
+- * without Emacs tags: <mtt><tag_fname><0x01><lbuf><NUL>
++ * Use 0x02 to separate fields (Can't use NUL because the
++ * hash key is terminated by NUL, or Ctrl_A because that is
++ * part of some Emacs tag files -- see parse_tag_line).
++ * Emacs tag: <mtt><tag_fname><0x02><ebuf><0x02><lbuf><NUL>
++ * other tag: <mtt><tag_fname><0x02><0x02><lbuf><NUL>
++ * without Emacs tags: <mtt><tag_fname><0x02><lbuf><NUL>
+ * Here <mtt> is the "mtt" value plus 1 to avoid NUL.
+ */
+ len = (int)tag_fname_len + (int)STRLEN(lbuf) + 3;
+diff --git a/src/testdir/test_taglist.vim b/src/testdir/test_taglist.vim
+new file mode 100644
+index 0000000..7aa830b
+--- /dev/null
++++ b/src/testdir/test_taglist.vim
+@@ -0,0 +1,39 @@
++" test 'taglist' function
++
++func Test_taglist_native_etags()
++ if !has('emacs_tags')
++ return
++ endif
++ call writefile([
++ \ "\x0c",
++ \ "src/os_unix.c,13491",
++ \ "set_signals(\x7f1335,32699",
++ \ "reset_signals(\x7f1407,34136",
++ \ ], 'Xtags')
++
++ set tags=Xtags
++
++ call assert_equal([['set_signals', '1335,32699'], ['reset_signals', '1407,34136']],
++ \ map(taglist('set_signals'), {i, v -> [v.name, v.cmd]}))
++
++ call delete('Xtags')
++endfunc
++
++func Test_taglist_ctags_etags()
++ if !has('emacs_tags')
++ return
++ endif
++ call writefile([
++ \ "\x0c",
++ \ "src/os_unix.c,13491",
++ \ "set_signals(void)\x7fset_signals\x011335,32699",
++ \ "reset_signals(void)\x7freset_signals\x011407,34136",
++ \ ], 'Xtags')
++
++ set tags=Xtags
++
++ call assert_equal([['set_signals', '1335,32699'], ['reset_signals', '1407,34136']],
++ \ map(taglist('set_signals'), {i, v -> [v.name, v.cmd]}))
++
++ call delete('Xtags')
++endfunc
+diff --git a/src/version.c b/src/version.c
+index c301a98..b10438e 100644
+--- a/src/version.c
++++ b/src/version.c
+@@ -771,6 +771,8 @@ static char *(features[]) =
+ static int included_patches[] =
+ { /* Add new patch number below this line */
+ /**/
++ 550,
++/**/
+ 378,
+ /**/
+ 377,
diff -Nru vim-8.0.0197/debian/rules vim-8.0.0197/debian/rules
--- vim-8.0.0197/debian/rules 2017-03-06 22:33:23.000000000 -0500
+++ vim-8.0.0197/debian/rules 2017-04-23 08:10:29.000000000 -0400
@@ -287,7 +287,8 @@
dh_prep -p $(PKG)
@echo "*** DEBIAN *** BUILDING VARIANT $*"
$(MAKE) -C src/$(SHADOWDIR)
- [ $(MAKETEST) != "yes" ] || flock debian $(MAKE) -j1 -C src/$(SHADOWDIR) test
+ # Ensure $TERM is set to a sane value for testing
+ [ $(MAKETEST) != "yes" ] || flock debian env TERM=xterm $(MAKE) -j1 -C src/$(SHADOWDIR) test
touch $@
install: install-stamp-xxd $(foreach v,$(VARIANTS),install-stamp-$(v))
Reply to: