Control: tags -1 - moreinfo

On Sun, Apr 23, 2017 at 03:57:05PM +0200, Ivo De Decker wrote:
> On Sun, Apr 23, 2017 at 08:29:50AM -0400, James McCoy wrote:
> > * Update Ubuntu release names in syntax highlighting files
> >   + Additionally, require word boundaries around release names, so
> >     stretch isn't mishighlighted as (unsupported) etch. (#859247)
> 
> If you are updating this, maybe you could also add support for
> jessie-backports-sloppy, stretch-backports and stretch-security.

Done.

> > * 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).
> 
> Please go ahead with the upload and remove the moreinfo tag from this bug once
> the upload is in unstable.

Done.  Updated debdiff attached, too.

Cheers,
-- 
James
GPG Key: 4096R/91BF BF4D 6956 BD5D F7B7  2D23 DFE6 91AE 331B A3DB
diffstat for vim-8.0.0197 vim-8.0.0197

 changelog                                                                      
|   13 +
 patches/series                                                                 
|    2 
 patches/upstream/Update-releases-in-deb-changelog-sources-syntax-files.patch   
|   92 ++++++++
 patches/upstream/patch-8.0.0550-cannot-parse-some-etags-format-tags-file.patch 
|  103 ++++++++++
 rules                                                                          
|    3 
 5 files changed, 212 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,16 @@
+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, jessie-backports-sloppy, and
+    stretch-backports/security 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 <james...@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/Update-releases-in-deb-changelog-sources-syntax-files.patch
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 <b...@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 <james...@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/patches/upstream/Update-releases-in-deb-changelog-sources-syntax-files.patch
 
vim-8.0.0197/debian/patches/upstream/Update-releases-in-deb-changelog-sources-syntax-files.patch
--- 
vim-8.0.0197/debian/patches/upstream/Update-releases-in-deb-changelog-sources-syntax-files.patch
    1969-12-31 19:00:00.000000000 -0500
+++ 
vim-8.0.0197/debian/patches/upstream/Update-releases-in-deb-changelog-sources-syntax-files.patch
    2017-04-23 08:10:29.000000000 -0400
@@ -0,0 +1,92 @@
+From: James McCoy <james...@debian.org>
+Date: Sun, 23 Apr 2017 12:10:19 -0400
+Subject: Update releases in deb{changelog,sources} syntax files
+
+- Add artful (Aardvark) to both
+- Add jessie-backports-sloppy, stretch-backports, and stretch-security
+  to debchangelog
+- debchangelog: Make urgency/binNMU variables script-local to avoid
+  namespace pollution
+- debsource: Require word boundary around distribution name.
+
+Closes: #859247
+Signed-off-by: James McCoy <james...@debian.org>
+---
+ runtime/syntax/debchangelog.vim | 12 ++++++------
+ runtime/syntax/debsources.vim   | 10 +++++-----
+ 2 files changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/runtime/syntax/debchangelog.vim b/runtime/syntax/debchangelog.vim
+index eb02aaf..6e6ed19 100644
+--- a/runtime/syntax/debchangelog.vim
++++ b/runtime/syntax/debchangelog.vim
+@@ -3,7 +3,7 @@
+ " Maintainer:  Debian Vim Maintainers 
<pkg-vim-maintain...@lists.alioth.debian.org>
+ " Former Maintainers: Gerfried Fuchs <al...@ist.org>
+ "                     Wichert Akkerman <wakke...@debian.org>
+-" Last Change: 2016 Nov 12
++" Last Change: 2017 Apr 23
+ " URL: 
https://anonscm.debian.org/cgit/pkg-vim/vim.git/plain/runtime/syntax/debchangelog.vim
+ 
+ " Standard syntax initialization
+@@ -14,14 +14,14 @@ endif
+ " Case doesn't matter for us
+ syn case ignore
+ 
+-let urgency='urgency=\(low\|medium\|high\|critical\)\( [^[:space:],][^,]*\)\='
+-let binNMU='binary-only=yes'
++let s:urgency='urgency=\(low\|medium\|high\|critical\)\( 
[^[:space:],][^,]*\)\='
++let s:binNMU='binary-only=yes'
+ 
+ " Define some common expressions we can use later on
+ 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))=)+"
++exe 'syn match debchangelogFirstKV    contained "; 
\('.s:urgency.'\|'.s:binNMU.'\)"'
++exe 'syn match debchangelogOtherKV    contained ", 
\('.s:urgency.'\|'.s:binNMU.'\)"'
++syn match debchangelogTarget  contained "\v 
%(frozen|unstable|sid|%(testing|%(old)=stable)%(-proposed-updates|-security)=|experimental|squeeze-%(backports%(-sloppy)=|volatile|lts|security)|%(wheezy|jessie)%(-backports%(-sloppy)=|-security)=|stretch%(-backports|-security)=|%(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-maintain...@lists.alioth.debian.org>
+ " Former Maintainer: Matthijs Mohlmann <matth...@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/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 via email to