# HG changeset patch # User Christian Brabandt # Date 1502032504 -7200 # Node ID 94e37fd2255609e56b000e43b0ae6c96780bb4cd # Parent e2b3a7cf550402da094ec4e8e90aa91e75b4b76c patch 8.0.0880: Travis uses an old Ubuntu version commit https://github.com/vim/vim/commit/02113ed4dfa585b4553a7c630b4d7eed0002aebd Author: Bram Moolenaar Date: Sun Aug 6 17:06:24 2017 +0200 patch 8.0.0880: Travis uses an old Ubuntu version Problem: Travis uses an old Ubuntu version. Solution: Switch from precise to trusty. (Ken Takata, closes https://github.com/vim/vim/issues/1897) diff --git a/.travis.yml b/.travis.yml --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,5 @@ language: c -# trusty still has a few problems, use precise until they are solved. -dist: precise +dist: trusty os: - osx @@ -22,7 +21,7 @@ env: "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'" # ASAN build - BUILD=yes TEST=test SANITIZER_CFLAGS="-g -O1 -DABORT_ON_INTERNAL_ERROR -DEXITFREE -fsanitize=address -fno-omit-frame-pointer" - FEATURES=huge SRCDIR=./src CHECK_AUTOCONF=no ASAN_OPTIONS="print_stacktrace=1 log_path=asan" + FEATURES=huge SRCDIR=./src CHECK_AUTOCONF=no ASAN_OPTIONS="print_stacktrace=1 log_path=asan" LSAN_OPTIONS="suppressions=$TRAVIS_BUILD_DIR/src/testdir/lsan-suppress.txt" "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'" sudo: false @@ -43,12 +42,12 @@ matrix: "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp'" - os: osx env: BUILD=yes TEST=test SANITIZER_CFLAGS="-g -O1 -DABORT_ON_INTERNAL_ERROR -DEXITFREE -fsanitize=address -fno-omit-frame-pointer" - FEATURES=huge SRCDIR=./src CHECK_AUTOCONF=no ASAN_OPTIONS="print_stacktrace=1 log_path=asan" + FEATURES=huge SRCDIR=./src CHECK_AUTOCONF=no ASAN_OPTIONS="print_stacktrace=1 log_path=asan" LSAN_OPTIONS="suppressions=$TRAVIS_BUILD_DIR/src/testdir/lsan-suppress.txt" "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'" - os: linux - compiler: gcc + compiler: clang env: BUILD=yes TEST=test SANITIZER_CFLAGS="-g -O1 -DABORT_ON_INTERNAL_ERROR -DEXITFREE -fsanitize=address -fno-omit-frame-pointer" - FEATURES=huge SRCDIR=./src CHECK_AUTOCONF=no ASAN_OPTIONS="print_stacktrace=1 log_path=asan" + FEATURES=huge SRCDIR=./src CHECK_AUTOCONF=no ASAN_OPTIONS="print_stacktrace=1 log_path=asan" LSAN_OPTIONS="suppressions=$TRAVIS_BUILD_DIR/src/testdir/lsan-suppress.txt" "CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp'" - os: linux compiler: clang @@ -74,15 +73,23 @@ addons: - python3-dev - liblua5.2-dev - lua5.2 + - ruby-dev - cscope + - libgtk2.0-dev before_install: - - if [ "$COVERAGE" = "yes" ]; then pip install --user cpp-coveralls==0.3.12; fi + - rvm reset + # Remove /opt/python/3.x.x/bin from $PATH for using system python3. + # ("pyenv global system" doesn't seem to work.) + - if [ "$TRAVIS_OS_NAME" = "linux" ] && which python3 | grep '/opt/python/' > /dev/null; then export PATH=$(echo $PATH | sed -e "s#$(echo $(which python3) | sed -e 's#/python3$##'):##"); fi + - if [ "$COVERAGE" = "yes" ]; then pip install --user cpp-coveralls; fi # needed for https support for coveralls # building cffi only works with gcc, not with clang - if [ "$COVERAGE" = "yes" ]; then CC=gcc pip install --user pyopenssl ndg-httpsclient pyasn1; fi # Lua is not installed on Travis OSX - if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew install lua; export LUA_PREFIX=/usr/local; fi + # Use llvm-cov instead of gcov when compiler is clang. + - if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$CC" = "clang" ]; then ln -sf $(which llvm-cov) /home/travis/bin/gcov; fi # Start virtual framebuffer to be able to test the GUI. Does not work on OS X. before_script: @@ -93,7 +100,8 @@ script: - if [ "$CHECK_AUTOCONF" = "yes" -a "$CC" = "gcc" ]; then make -C src autoconf; fi - if [ "x$SHADOWOPT" != x ]; then make -C src shadow; fi - (cd ${SRCDIR} && ./configure --with-features=$FEATURES $CONFOPT --enable-fail-if-missing && if [ "$BUILD" = "yes" ]; then make -j$NPROC; fi) - - if [ "$BUILD" = "yes" ]; then ${SRCDIR}/vim --version; fi + # Show Vim version and also if_xx versions. + - if [ "$BUILD" = "yes" ]; then ${SRCDIR}/vim --version; ${SRCDIR}/vim --not-a-term -u NONE -S ${SRCDIR}/testdir/if_ver-1.vim -c quit > /dev/null; ${SRCDIR}/vim --not-a-term -u NONE -S ${SRCDIR}/testdir/if_ver-2.vim -c quit > /dev/null; cat if_ver.txt; fi - if [ -n "$ASAN_OPTIONS" ]; then export PATH=/usr/lib/llvm-$(clang -v 2>&1 | sed -n 's/.*version \([1-9]\.[0-9][0-9]*\).*/\1/p')/bin:$PATH; fi - make $SHADOWOPT $TEST - if [ -n "$ASAN_OPTIONS" ]; then for log in $(find -type f -name 'asan.*' -size +0); do cat "$log"; err=1; done; fi diff --git a/Filelist b/Filelist --- a/Filelist +++ b/Filelist @@ -134,6 +134,7 @@ SRC_ALL = \ src/testdir/bench*.in \ src/testdir/bench*.vim \ src/testdir/samples/*.txt \ + src/testdir/if_ver*.vim \ src/proto.h \ src/proto/arabic.pro \ src/proto/blowfish.pro \ diff --git a/src/testdir/if_ver-1.vim b/src/testdir/if_ver-1.vim new file mode 100644 --- /dev/null +++ b/src/testdir/if_ver-1.vim @@ -0,0 +1,26 @@ +" Print all interface versions and write the result into if_ver.txt. +" For Ubuntu. Part 1. + +redir! > if_ver.txt +if 1 + echo "*** Interface versions ***" + echo "\nLua:" + lua print(_VERSION) + " echo "\nLuaJIT:" + " lua print(jit.version) + if has('mzscheme') + echo "\nMzScheme:" + mzscheme (display (version)) + endif + echo "\nPerl:" + perl print $^V + echo "\nRuby:" + ruby print RUBY_VERSION + if has('tcl') + echo "\nTcl:" + tcl puts [info patchlevel] + endif + echo "\nPython 2:" + python import sys; print sys.version +endif +redir END diff --git a/src/testdir/if_ver-2.vim b/src/testdir/if_ver-2.vim new file mode 100644 --- /dev/null +++ b/src/testdir/if_ver-2.vim @@ -0,0 +1,10 @@ +" Print py3 interface version and write the result into if_ver.txt. +" For Ubuntu. Part 2. + +redir! >> if_ver.txt +if 1 + echo "\nPython 3:" + python3 import sys; print(sys.version) + echo "\n" +endif +redir END diff --git a/src/testdir/lsan-suppress.txt b/src/testdir/lsan-suppress.txt new file mode 100644 --- /dev/null +++ b/src/testdir/lsan-suppress.txt @@ -0,0 +1,3 @@ +# Suppress leaks from X libraries on Ubuntu trusty. +leak:libX11.so.6 +leak:libXt.so.6 diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -770,6 +770,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 880, +/**/ 879, /**/ 878,