Commit Graph

168 Commits

Author SHA1 Message Date
b-r-o-c-k
afe6b4881f build/msvc: Add workaround for false positive exit code from MSBuild
See https://cmake.org/pipermail/cmake-developers/2015-October/026775.html
2018-03-26 10:54:44 -05:00
Justin M. Keyes
66a8b593e7 ci/travis: report cache size 2018-03-18 14:11:39 +01:00
Justin M. Keyes
8f82f95c1c ci/travis: also cache $DEPS_DOWNLOAD_DIR
ref #5166
2018-03-18 14:11:38 +01:00
Justin M. Keyes
b0e5187e49 ci/travis: Don't destroy cache during prepare
This change was missed in c7f95fde1b.
ref #5166
2018-03-17 14:26:34 +01:00
b-r-o-c-k
e24e98534b ci/AppVeyor: use PowerShell (#8124) 2018-03-11 23:44:07 +01:00
Justin M. Keyes
c7f95fde1b ci/travis: Don't destroy cache during prepare
Use `cp -r` instead of `mv`.
Remove use of `dirname`, that was missed in 10cdf8c286.

closes #5166
2018-03-11 20:29:20 +01:00
Justin M. Keyes
b0b656dd37 ci/travis: rename $BUILD_NVIM_DEPS to $CACHE_ENABLE 2018-03-11 15:38:18 +01:00
Justin M. Keyes
45e81e03f8 ci/macOS: skip python2 on travis macOS
macOS travis builds recently started failing (travis caches were cleared
recently, maybe related). python2 is reasonably covered by linux CI. Not
going to waste time on it for macOS CI.

    ==> Installing python@2
    ==> Downloading https://homebrew.bintray.com/bottles/python@2-2.7.14_3.el_capita
    ==> Pouring python@2-2.7.14_3.el_capitan.bottle.tar.gz
    Error: The `brew link` step did not complete successfully
    The formula built, but is not symlinked into /usr/local
    Could not symlink bin/2to3-2
    Target /usr/local/bin/2to3-2
    is a symlink belonging to python. You can unlink it:
      brew unlink python
    To force the link and overwrite all conflicting files:
      brew link --overwrite python@2
    To list all files that would be deleted:
      brew link --overwrite --dry-run python@2
    Possible conflicting files are:
    /usr/local/bin/2to3-2 -> /usr/local/Cellar/python/2.7.12_1/bin/2to3-2
    /usr/local/bin/2to3-2.7 -> /usr/local/Cellar/python/2.7.12_1/bin/2to3-2.7
    /usr/local/bin/idle -> /usr/local/Cellar/python/2.7.12_1/bin/idle
    ...
2018-03-11 12:45:15 +01:00
Justin M. Keyes
968c7ab17e ci/travis: use ninja instead of make 2018-03-11 12:45:15 +01:00
Justin M. Keyes
d554a6c7f0 ci/AppVeyor: fix set whitespace quoting 2018-03-11 12:43:42 +01:00
Justin M. Keyes
9cefd83cc7
Merge #8084 'build/win: support MSVC' 2018-03-08 20:26:18 +01:00
b-r-o-c-k
0adf950ccf build/msvc: Fix AppVeyor build script for 'MINGW_64-gcov' configuration 2018-03-07 11:07:07 -06:00
b-r-o-c-k
7612ba5ad9 build/msvc: Change MSBuild verbosity to normal 2018-03-05 11:00:01 -06:00
b-r-o-c-k
cfb713b5c6 build/msvc: Add Appveyor CI for MSVC 2018-03-04 17:44:23 -06:00
Marco Hinz
90fc7c6ad0
ci: the homebrew formula for Python 3 was renamed (#8094)
Homebrew changed a few formulae to meet their standards. "python3" was renamed
to "python", and "python2" to "python@2".

As for why, read this announcement: https://brew.sh/2018/01/19/homebrew-1.5.0

Since we install Python 3 via homebrew anyway, we now do the same for Python 2
as well. We do that because the system Python 2 of macOS comes without pip
installed and this way seems cleaner than doing "sudo easy_install pip".

The Python 2 formula is keg-only now, so it doesn't interfere with the system
Python 2. Therefore we have to add its executables to $PATH ourselves.
2018-03-04 01:11:09 +01:00
James McCoy
9fdd5d7f03
codecov: Submit test suite specific coverage 2018-02-06 23:23:59 -05:00
James McCoy
6e2bb564e1
ci: Remove coveralls coverage reporting 2018-02-06 21:18:54 -05:00
James McCoy
5da6f0e903
travis: Don't run unit tests for functionaltest-lua build 2018-02-02 07:28:56 -05:00
Jan Edmund Lazo
9370a0e5d8 ci/travis: install neovim npm module on osx (#7825)
Always get latest nvm on osx to fix lts aliases.
2018-01-08 00:37:31 +01:00
Justin M. Keyes
46a9600d0e ci/travis: macOS: skip ruby-neovim install
With 6fa0a0a516 the neovim-ruby gem installs successfully, but
ruby_spec.lua can't find it: g:ruby_host_prog needs to be set correctly.

Just skip the whole thing for now, so that CI builds don't fail.
2018-01-07 20:09:25 +01:00
Justin M. Keyes
6fa0a0a516 ci/travis: macOS: switch ruby version
Travis macOS builds are failing because of neovim-ruby gem dependencies.
Switch default ruby to a newer version to make the builds pass.
2018-01-07 20:04:57 +01:00
James McCoy
dd0fa4fd0e
ci: asan_check: No-op unless performing ASAN build 2018-01-02 08:15:32 -05:00
James McCoy
90aae43984
travis: Use Ubuntu's clang instead of llvm's repo
The llvm repos commonly have access issues, so removing them will
improve stability of the Travis builds.

Filtering check_log's output through asan_symbolize also avoids the
version dance every time a new clang version makes its way into Travis.
2018-01-02 08:15:31 -05:00
Jan Edmund Lazo
5b692124cc test: remove inspect test; set NODE_PATH in nodejs_spec.lua
provider#node#can_inspect will fail on some systems because it is common
to have old node versions in OS (any Linux OS that has LTS releases)
and CI (Travis, Appveyor).

NODE_PATH can be trivially set with VimL.
Build scripts don't have to set it for the nodejs tests to work.
NODE_PATH is optional to begin with and is used only as a workaround
for the neovim node.js host.
2017-12-17 16:09:18 +01:00
Jan Edmund Lazo
a1adfdc7d5 ci: nodejs client acceptance-test #7706
ci: install nodejs 8 in Appveyor, Travis

provider: check node version for debug support
Resolve https://github.com/neovim/neovim/pull/7577#issuecomment-350590592 for Unix.

provider: test if nodejs in ci supports --inspect-brk

nodejs host for neovim requires nodejs 6+ to work properly.
nodejs 6.12+ or 7.6+ is required for debug support via `node --inspect-brk`.

provider: run cli.js of nodejs host directly

npm shims are useless because the user cannot set node to debug mode via
--inspect-brk. This is problematic on Windows which use batchfiles and
shell scripts to compensate for not supporting shebang.

The patch uses `npm root -g` to get the absolute path of the global npm
modules. If that fails, then the user did not install neovim npm package
globally. Use that absolute path to find `neovim/bin/cli.js`, which is
what the npm shim actually runs with node. glob() is for a simple file
check in case bin/ is removed because the npm shims are ignored now.
2017-12-17 16:09:18 +01:00
Jan Edmund Lazo
4a5bc6275d ci: run oldtests in Appveyor #7705 2017-12-10 02:45:41 +01:00
Jan Edmund Lazo
afae4b5141 ci: Install neovim gem in Appveyor (#7700)
ref #7655
2017-12-07 10:21:03 +01:00
Justin M. Keyes
f51a397010 ci/travis: ignore pip3 failure
Workaround for travis issue:
https://github.com/travis-ci/travis-ci/issues/8363

Cannot check `command -v pip3`, because that may point to
`/opt/pyenv/shims/pip3` which is also (sometimes) broken.

ref 6389bde0bc
2017-09-10 14:14:00 +02:00
Justin M. Keyes
6389bde0bc ci/travis: skip pip3 upgrade if pip3 is missing
Workaround for travis issue:
https://github.com/travis-ci/travis-ci/issues/8363

Sometimes `pip3` works, sometimes not:
   pyenv: pip3: command not found
   The `pip3' command exists in these Python versions:
     3.5
     3.5.3

Tried these steps to fix the issue:
- add `python: 3.6` to top level of `.travis.yml`
- add `python3` to `addons.apt.packages` level of `.travis.yml`
- `pyenv global system 3.{4,5,6}`
- `pyenv global 3.6`
In all cases the presence or absence of `pip3` was random.
2017-09-09 21:26:56 +02:00
Justin M. Keyes
23cc41df55 ci/travis: report python environment info 2017-09-09 21:26:55 +02:00
Justin M. Keyes
44dc8bbb13 ci/win: list build permutations explicitly (#7163)
This avoids changing the matrix permutations for the old non-gcov
builds, so that old URLs continue to work:

https://ci.appveyor.com/api/projects/neovim/neovim/artifacts/build/Neovim.zip?branch=master&job=Configuration%3A%20MINGW_32
https://ci.appveyor.com/api/projects/neovim/neovim/artifacts/build/Neovim.zip?branch=master&job=Configuration%3A%20MINGW_64
2017-08-15 11:06:51 +02:00
James McCoy
e88fc35429
ci: Collect coverage data for MINGW_64 builds on appveyor 2017-08-14 09:15:59 -04:00
James McCoy
e463cb6fa0
ci: Switch to codecov.io for coverage data
Continue uploading to coveralls, for now, so we can compare the
services.
2017-08-14 09:15:54 -04:00
Justin M. Keyes
f34befe74c Merge #6789 from ZyX-I/lua-path
lua: Add paths from &runtimepath to package.path and package.cpath
2017-06-27 02:29:15 +02:00
Justin M. Keyes
eb6dd3e42d ci: Dump $NVIM_LOG_FILE contents 2017-06-07 00:26:21 +02:00
ZyX
58f6ef50a8 ci: Also lint lua code in src/nvim/lua 2017-05-25 16:50:06 +03:00
ZyX
09f849b600 Merge branch 'master' into luaviml'/lua 2017-05-08 15:43:45 +03:00
Justin M. Keyes
b9dba14fa3
win: build: RelWithDebInfo 2017-05-03 20:28:54 -04:00
Rui Abreu Ferreira
685ca180f7 win: Terminal UI #6315
For CI builds unibilium is provided through msys2 packages, and
libtermkey is built from source in third-party from equalsraf/libtermkey.

In Windows we cannot read terminal input from the stdin file descriptor,
instead use libuv's uv_tty API. It should handle key input and encoding.

The UI suspend is not implemented for Windows, because the
SIGSTP/SIGCONT do not exist in windows. Currently this is a NOOP.

Closes #3902
Closes #6640
2017-05-03 12:48:24 +02:00
ZyX
e4d0fa6e8d Do not trace in check_runtime_files 2017-05-01 17:38:21 +03:00
ZyX
1109ca7198 ci: Use \{1,\} in place of \+ 2017-05-01 17:36:45 +03:00
ZyX
48fa42153a ci: Fold output in travis web interface 2017-05-01 16:36:24 +03:00
ZyX
ee4daa6572 ci: Remove x from test x 2017-04-24 23:11:13 +03:00
ZyX
74d5705ca9 ci: Source ci/common/test.sh in run_test_wd subshell 2017-04-24 22:37:36 +03:00
ZyX
85903cb0e6 ci: Make scripts in common be dash-compatible
`ulimit` may still be not present: dash and busybox support it, but posh does
not.
2017-04-24 22:37:36 +03:00
ZyX
4ccef05829 ci: Make $cmd failure fail the build without -o pipefail 2017-04-24 21:44:17 +03:00
ZyX
fc16d02c3d ci: Do not use pipefail 2017-04-24 19:30:28 +03:00
ZyX
3a0117c850 ci: Do not accidentally kill something unneeded 2017-04-24 18:34:47 +03:00
ZyX
26fad863ba ci: When using restarting tests kill make with the shell 2017-04-24 18:28:46 +03:00
ZyX
ab4d13e2fa Merge branch 'master' into luaviml'/lua 2017-04-10 22:21:06 +03:00
ZyX
2a8055a8d9 ci: Make appveyor use new output handler as well 2017-04-10 15:11:41 +03:00
ZyX
7c9c4d9da9 ci: Increase check-single-includes wait time to 10s 2017-04-09 03:36:17 +03:00
ZyX
3321232c81 ci: Allow check-single-includes to hang 2017-04-09 03:36:16 +03:00
ZyX
043d8ff9f2 Merge branch 'master' into luaviml'/lua 2017-04-08 01:54:58 +03:00
ZyX
c1416e0665 ci: Really continue tests on failure, print global summary 2017-04-07 00:46:52 +03:00
ZyX
017f64b970 ci: Also fail if last restart hang up 2017-04-04 04:59:30 +03:00
ZyX
dcad882256 ci: Do not fail csi_clean if there are no files to remove 2017-04-04 04:17:40 +03:00
ZyX
d59378a5ca ci: Force make output coloring 2017-04-04 04:03:50 +03:00
ZyX
644db2165e ci: Clean up when restarting single includes test 2017-04-04 03:58:10 +03:00
ZyX
ae7d8d8ffb ci: Do not mark test as failed if it is previous one which failed 2017-04-03 03:47:42 +03:00
ZyX
6ddaace7ac ci: Do not shift if there are not enough arguments 2017-03-31 20:52:05 +03:00
ZyX
86f5b1276b ci: Add test watchdog and tracing for lint tests 2017-03-31 19:42:18 +03:00
ZyX
929c398aab ci: Enable tracing 2017-03-31 19:09:18 +03:00
ZyX
d9069b9fe4 ci: Check for exact value of CI_TARGET, not its emptyness 2017-03-31 17:39:18 +03:00
ZyX
4c20733f6b ci: Add ${NL} variable 2017-03-31 16:19:47 +03:00
ZyX
2da3caef1b ci: Do not quote MAKE_CMD 2017-03-31 16:17:38 +03:00
ZyX
2bf9d36ccd ci: Refactor CI scripts
1. CI_TARGET now determines which run_${CI_TARGET}.sh script to use. Defaults to
   `tests`.
2. Build no longer halts on the first failing suit: e.g. if functional tests
   failed it will continue with unit tests, etc.
3. All ${MAKE_CMD} occurrences moved to `top_make` function, added `build_make`
   as an alias to `make -C build` (`"${MAKE_CMD}" -C "${BUILD_DIR}"`) which is
   too verbose.

`suite.sh` was copied from powerline (tests/common.sh file), assumes running
with POSIX shells (and actually uses dash in powerline). Then some convenience
functions were added (run_test and below).
2017-03-31 16:06:17 +03:00
Nikolai Aleksandrovich Pavlov
a1c928e70c ci: Do not hide ci directory (#6410) 2017-03-31 14:32:58 +02:00