mirror of
https://github.com/neovim/neovim.git
synced 2025-09-06 19:38:20 +00:00
Compare commits
17 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
2ccc716c4a | ||
![]() |
4e23f3e180 | ||
![]() |
8b3113ce7a | ||
![]() |
a597ab8d1b | ||
![]() |
d7b3ac029c | ||
![]() |
60e3cf6247 | ||
![]() |
edeb19d5e9 | ||
![]() |
0dd89cda9c | ||
![]() |
fc6e8a4db8 | ||
![]() |
2fbe28bc05 | ||
![]() |
b5de158fdf | ||
![]() |
e53e56d5e5 | ||
![]() |
f3260129ad | ||
![]() |
340d853585 | ||
![]() |
57e0a578f0 | ||
![]() |
83fca0ab13 | ||
![]() |
fb815bd7b7 |
@@ -74,7 +74,8 @@ jobs:
|
||||
- os: osx
|
||||
compiler: gcc
|
||||
osx_image: xcode9.4 # macOS 10.13
|
||||
- os: linux
|
||||
- if: branch = master
|
||||
os: linux
|
||||
env: CI_TARGET=lint
|
||||
- stage: Flaky builds
|
||||
os: linux
|
||||
@@ -126,6 +127,7 @@ addons:
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
- /^release-\d+\.\d+$/
|
||||
|
||||
cache:
|
||||
apt: true
|
||||
|
@@ -112,7 +112,7 @@ set_property(CACHE CMAKE_BUILD_TYPE PROPERTY
|
||||
# version string, else they are combined with the result of `git describe`.
|
||||
set(NVIM_VERSION_MAJOR 0)
|
||||
set(NVIM_VERSION_MINOR 3)
|
||||
set(NVIM_VERSION_PATCH 2)
|
||||
set(NVIM_VERSION_PATCH 3)
|
||||
set(NVIM_VERSION_PRERELEASE "") # for package maintainers
|
||||
|
||||
# API level
|
||||
|
@@ -192,9 +192,9 @@ function! s:version_info(python) abort
|
||||
let nvim_path = s:trim(s:system([
|
||||
\ a:python, '-c',
|
||||
\ 'import sys; sys.path.remove(""); ' .
|
||||
\ 'import pynvim; print(pynvim.__file__)']))
|
||||
\ 'import neovim; print(neovim.__file__)']))
|
||||
if s:shell_error || empty(nvim_path)
|
||||
return [python_version, 'unable to load pynvim Python module', pypi_version,
|
||||
return [python_version, 'unable to load neovim Python module', pypi_version,
|
||||
\ nvim_path]
|
||||
endif
|
||||
|
||||
@@ -206,13 +206,13 @@ function! s:version_info(python) abort
|
||||
return a == b ? 0 : a > b ? 1 : -1
|
||||
endfunction
|
||||
|
||||
" Try to get pynvim.VERSION (added in 0.1.11dev).
|
||||
" Try to get neovim.VERSION (added in 0.1.11dev).
|
||||
let nvim_version = s:system([a:python, '-c',
|
||||
\ 'from pynvim import VERSION as v; '.
|
||||
\ 'from neovim import VERSION as v; '.
|
||||
\ 'print("{}.{}.{}{}".format(v.major, v.minor, v.patch, v.prerelease))'],
|
||||
\ '', 1, 1)
|
||||
if empty(nvim_version)
|
||||
let nvim_version = 'unable to find pynvim Python module version'
|
||||
let nvim_version = 'unable to find neovim Python module version'
|
||||
let base = fnamemodify(nvim_path, ':h')
|
||||
let metas = glob(base.'-*/METADATA', 1, 1)
|
||||
\ + glob(base.'-*/PKG-INFO', 1, 1)
|
||||
@@ -415,17 +415,18 @@ function! s:check_python(version) abort
|
||||
call health#report_info('Python version: ' . pyversion)
|
||||
if s:is_bad_response(status)
|
||||
call health#report_info(printf('pynvim version: %s (%s)', current, status))
|
||||
else
|
||||
call health#report_info(printf('pynvim version: %s', current))
|
||||
let [module_found, _msg] = provider#pythonx#CheckForModule(python_bin,
|
||||
\ 'neovim', a:version)
|
||||
if !module_found
|
||||
\ 'pynvim', a:version)
|
||||
if status !=? '^outdated' && module_found
|
||||
" neovim module was not found, but pynvim was
|
||||
call health#report_error('Importing "neovim" failed.',
|
||||
\ "Reinstall \"pynvim\" and optionally \"neovim\" packages.\n" .
|
||||
\ pip ." uninstall pynvim neovim\n" .
|
||||
\ pip ." install pynvim\n" .
|
||||
\ pip ." install neovim # only if needed by third-party software")
|
||||
endif
|
||||
else
|
||||
call health#report_info(printf('pynvim version: %s', current))
|
||||
endif
|
||||
|
||||
if s:is_bad_response(current)
|
||||
|
@@ -10,7 +10,7 @@ function! provider#pythonx#Require(host) abort
|
||||
|
||||
" Python host arguments
|
||||
let prog = (ver == '2' ? provider#python#Prog() : provider#python3#Prog())
|
||||
let args = [prog, '-c', 'import sys; sys.path.remove(""); import pynvim; pynvim.start_host()']
|
||||
let args = [prog, '-c', 'import sys; sys.path.remove(""); import neovim; neovim.start_host()']
|
||||
|
||||
" Collect registered Python plugins into args
|
||||
let python_plugins = remote#host#PluginsForHost(a:host.name)
|
||||
@@ -40,7 +40,7 @@ function! provider#pythonx#Detect(major_ver) abort
|
||||
let errors = []
|
||||
|
||||
for prog in progs
|
||||
let [result, err] = provider#pythonx#CheckForModule(prog, 'pynvim', a:major_ver)
|
||||
let [result, err] = provider#pythonx#CheckForModule(prog, 'neovim', a:major_ver)
|
||||
if result
|
||||
return [prog, err]
|
||||
endif
|
||||
@@ -75,12 +75,12 @@ function! provider#pythonx#CheckForModule(prog, module, major_version) abort
|
||||
|
||||
let min_version = (a:major_version == 2) ? '2.6' : '3.3'
|
||||
|
||||
" Try to load pynvim module, and output Python version.
|
||||
" Try to load module, and output Python version.
|
||||
" Exit codes:
|
||||
" 0 pynvim module can be loaded.
|
||||
" 2 pynvim module cannot be loaded.
|
||||
" 0 module can be loaded.
|
||||
" 2 module cannot be loaded.
|
||||
" Otherwise something else went wrong (e.g. 1 or 127).
|
||||
let [prog_exitcode, prog_version] = s:import_module(a:prog, 'pynvim')
|
||||
let [prog_exitcode, prog_version] = s:import_module(a:prog, a:module)
|
||||
|
||||
if prog_exitcode == 2 || prog_exitcode == 0
|
||||
" Check version only for expected return codes.
|
||||
@@ -94,7 +94,7 @@ function! provider#pythonx#CheckForModule(prog, module, major_version) abort
|
||||
endif
|
||||
|
||||
if prog_exitcode == 2
|
||||
return [0, prog_path.' does not have the "pynvim" module. :help provider-python']
|
||||
return [0, prog_path.' does not have the "' . a:module . '" module. :help provider-python']
|
||||
elseif prog_exitcode == 127
|
||||
" This can happen with pyenv's shims.
|
||||
return [0, prog_path . ' does not exist: ' . prog_version]
|
||||
|
@@ -1,6 +1,8 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Shows a log with changes grouped next to their merge-commit.
|
||||
# Prints a nicely-formatted commit history.
|
||||
# - Commits are grouped below their merge-commit.
|
||||
# - Issue numbers are moved next to the commit-id.
|
||||
#
|
||||
# Parameters:
|
||||
# $1 "since" commit
|
||||
@@ -19,14 +21,32 @@ is_merge_commit() {
|
||||
git log $1^2 >/dev/null 2>&1 && return 0 || return 1
|
||||
}
|
||||
|
||||
# Removes parens from issue/ticket/PR numbers.
|
||||
#
|
||||
# Example:
|
||||
# in: 3340e08becbf foo (#9423)
|
||||
# out: 3340e08becbf foo #9423
|
||||
_deparen() {
|
||||
sed 's/(\(\#[0-9]\{3,\}\))/\1/g'
|
||||
}
|
||||
|
||||
# Cleans up issue/ticket/PR numbers in the commit descriptions.
|
||||
#
|
||||
# Example:
|
||||
# in: 3340e08becbf foo (#9423)
|
||||
# out: 3340e08becbf #9423 foo
|
||||
_format_ticketnums() {
|
||||
nvim -Es +'g/\v(#[0-9]{3,})/norm! ngEldE0ep' +'%p' | _deparen
|
||||
}
|
||||
|
||||
for commit in $(git log --format='%H' --first-parent "$__SINCE"..HEAD); do
|
||||
if is_merge_commit ${commit} ; then
|
||||
if [ -z "$__INVMATCH" ] || ! git log --oneline ${commit}^1..${commit}^2 \
|
||||
| grep -E "$__INVMATCH" >/dev/null 2>&1 ; then
|
||||
| >/dev/null 2>&1 grep -E "$__INVMATCH" ; then
|
||||
git log -1 --oneline ${commit}
|
||||
git log --format=' %h %s' ${commit}^1..${commit}^2
|
||||
fi
|
||||
else
|
||||
git log -1 --oneline ${commit}
|
||||
fi
|
||||
done
|
||||
done | _format_ticketnums
|
||||
|
@@ -67,7 +67,7 @@ _do_release_commit() {
|
||||
|
||||
if ! test "$ARG1" = '--use-current-commit' ; then
|
||||
echo "Building changelog since ${__LAST_TAG}..."
|
||||
__CHANGELOG="$(./scripts/git-log-pretty-since.sh "$__LAST_TAG" 'vim-patch:\S')"
|
||||
__CHANGELOG="$(./scripts/git-log-pretty-since.sh "$__LAST_TAG" 'vim-patch:[^[:space:]]')"
|
||||
|
||||
git add CMakeLists.txt
|
||||
git commit --edit -m "${__RELEASE_MSG} ${__CHANGELOG}"
|
||||
|
@@ -1675,8 +1675,7 @@ static void patch_terminfo_bugs(TUIData *data, const char *term,
|
||||
}
|
||||
|
||||
// Blacklist of terminals that cannot be trusted to report DECSCUSR support.
|
||||
if (!(st || (vte_version != 0 && vte_version < 3900)
|
||||
|| (konsolev > 0 && konsolev < 180770))) {
|
||||
if (!(st || (vte_version != 0 && vte_version < 3900) || konsolev)) {
|
||||
data->unibi_ext.reset_cursor_style = unibi_find_ext_str(ut, "Se");
|
||||
data->unibi_ext.set_cursor_style = unibi_find_ext_str(ut, "Ss");
|
||||
}
|
||||
|
@@ -2512,6 +2512,9 @@ describe(":substitute", function()
|
||||
end)
|
||||
|
||||
it(':substitute with inccommand during :terminal activity', function()
|
||||
if helpers.skip_fragile(pending) then
|
||||
return
|
||||
end
|
||||
retry(2, 40000, function()
|
||||
local screen = Screen.new(30,15)
|
||||
clear()
|
||||
|
@@ -61,6 +61,9 @@ describe('feeding large chunks of input with <Paste>', function()
|
||||
end)
|
||||
|
||||
it('ok', function()
|
||||
if helpers.skip_fragile(pending) then
|
||||
return
|
||||
end
|
||||
local t = {}
|
||||
for i = 1, 20000 do
|
||||
t[i] = 'item ' .. tostring(i)
|
||||
|
@@ -51,6 +51,9 @@ describe("shell command :!", function()
|
||||
end)
|
||||
|
||||
it("throttles shell-command output greater than ~10KB", function()
|
||||
if helpers.skip_fragile(pending) then
|
||||
return
|
||||
end
|
||||
child_session.feed_data(
|
||||
":!for i in $(seq 2 30000); do echo XXXXXXXXXX $i; done\n")
|
||||
|
||||
|
Reference in New Issue
Block a user