Debian Patches

Status for vim-youcompleteme/0+20200825+git2afee9d+ds-2

Patch Description Author Forwarded Bugs Origin Last update
0017-Swallow-TypeError-when-omnicompleter-puts-garbage-in.patch [PATCH] Swallow TypeError when omnicompleter puts garbage in item["user_data"] Boris Staletic <boris.staletic@gmail.com> no 2020-10-13
0001-Make-hover-request-asynchronous.patch [PATCH] Make hover request asynchronous
The hover request is enabled by default on CursorHold. It's not uncommon
for &updatetime to be set to a small value for other plugings that
update on CursorHold (even YCM used to do this).

However, previously the Hover request was _blocking_. This meant that on
a fairly large codebase, by default YCM could block Vim for many seconds
particularly on startup.

This is YCM anathema, and a big error. Therfore, as it's not easy to
unwind the "enabled by default" decision, a better resolution is to make
the request asynchronous.

This change introduces a `youcompleteme#GetCommandResponseAsync` with
the same behaviour as `youcompleteme#GetCommandResponse` but taking a
callback to handle the result. This is in turn used by the YCMHover
mapping and autocommand.
Ben Jackson <puremourning@gmail.com> no 2020-09-09
0002-don-t-check-file-size-on-unsupported-filetypes.patch [PATCH] don't check file size on unsupported filetypes
Previously, this was providing a false negatives. Now,
if the filetype is not approved, we immediately return
without trying to finish opening it.
Kevin Morris <kevr.gtalk@gmail.com> no 2020-09-08
0003-Clarifications-for-ycm_filter_diagnostics-in-README.patch [PATCH] Clarifications for ycm_filter_diagnostics in README Julien Marrec <julien.marrec@gmail.com> no 2020-09-16
0004-Vimspector-add-schema.patch [PATCH] Vimspector add schema Ben Jackson <puremourning@gmail.com> no 2020-09-15
0005-fix-coverage-reports-Make-python-coverage-incrementa.patch [PATCH] fix coverage reports: Make python coverage incremental Ben Jackson <puremourning@gmail.com> no 2020-09-19
0006-Resolve-completions-on-demand.patch [PATCH] Resolve completions on-demand
This uses the `:help complete-popuphidden` API to show the info popup
asynchronously when the user has configured vim to use the info popup.

* we request the resolve on CompleteChanged
* we already store the extra_data in the completion user data, so we
just pull out the resolve key from there
* when we have the resolved data, we call popup_findinfo() and then
popup_settext() and popup_show() on that ID
* we re-use the _latest_completion_request so that we don't have
outstanding resolve and completion requests
* we re-use the request_data from the completion request for efficiency
and correctness (server will reject if the request data changes at
all) we re-use the 'completion' poller, for the same reasons.

There are some caveats:

* We only want to do this if Vim supports it.
* We only want to do this if completeopt contains popup (we add
popuphidden ourselves). Otherwise, we just break the preview window
Some items will already be resolved, so we don't want to waste time
re-resolving
* We should provide a way to turn off this async resolve in case the
delay is too much or it's buggy. We use
g:ycm_max_num_candidates_to_resolve for this with -1 meaning no limit
(the current behaviour). We force the value of this to 10 if we're
going to do async resolve. This is a sort of cheap 'capabilities'
implementation for this feature.

To ensure vim supports it, we update the minimum version of vim to the
latest ubuntu LTS and update the docker image to run tests against that
too.This does mean we need to special-case neovim in a couple of places
as it reports its version as 800, but will work as before.
Ben Jackson <puremourning@gmail.com> no 2020-09-07
0007-Update-ycmd.patch [PATCH] Update ycmd.
This pulls in the following chnages:

* GoToSymbol for typescript
* RefactorRename for python
* Switch from RLS to RA
* Drop Python 3.5 support in the server
* Lots of completer version updates
* Minor build/instal fixes
* javascriptreact support
* Signature help offset support
* Correctly supplying ranges for CodeActions
* Support for TCP LSP connections
* Support for configuration sections in LSP
* Support for deferred resolve in LSP
Ben Jackson <puremourning@gmail.com> no 2020-09-20
0008-Simplify-diagnostic-filter.patch [PATCH] Simplify diagnostic filter Boris Staletic <boris.staletic@gmail.com> no 2020-09-19
0009-fix-a-typo-in-README.md.patch [PATCH] fix a typo in README.md Jim Lin <b04705003@ntu.edu.tw> no 2020-09-20
0010-Update-vim-help.patch [PATCH] Update vim help Ben Jackson <puremourning@gmail.com> no 2020-09-20
0011-Correct-go-docs.patch [PATCH] Correct go docs Ben Jackson <puremourning@gmail.com> no 2020-09-20
0012-Update-minimal-vimrc-to-add-encoding.patch [PATCH] Update minimal vimrc to add encoding Ben Jackson <puremourning@gmail.com> no 2020-09-30
0013-Add-WSL-instructions.patch [PATCH] Add WSL instructions. Ben Jackson <puremourning@users.noreply.github.com> no 2020-10-09
0014-Fix-formatting.patch [PATCH] Fix formatting Ben Jackson <puremourning@users.noreply.github.com> no 2020-10-09
0015-Allow-completion-on-a-buffer-without-filetype.patch [PATCH] Allow completion on a buffer without filetype
Introduce "fake" filetype `ycm_nofiletype` that is used to handle all
buffers without filetype.
Maxim Kim <habamax@gmail.com> no 2020-10-09
0016-Fix-typos.patch [PATCH] Fix typos
* fix "plguin"
* fix ***NOT** -- in vim markdown it spans for the rest of the file making it bold_italic.
Maxim Kim <habamax@gmail.com> no 2020-10-11
0018-Highlight-diagnostics-with-low-priority-to-allow-hls.patch [PATCH] Highlight diagnostics with low priority, to allow hlsearch to work Boris Staletic <boris.staletic@gmail.com> no 2020-10-13
0019-Allow-supressing-the-quickfix-height-changes.patch [PATCH] Allow supressing the quickfix height changes
This allows the quickfix to be made vertical, with

au FileType qf let b:ycm_no_resize = 1 <bar> wincmd L

Using the YcmQuickFixOpened/YcmLocationOpened can work (with wincmd _),
but this messes up the layout of split windows, e.g.:

:au User YcmQuickFixOpened wincmd _
:split
:YcmCOmpleter GoToSymbol User

This breaks the layout of the 2 splits (as YCM first resizes the
quickfix window with its own command, thust increasing cmdheight to
&lines - <new height>)
Ben Jackson <ben.jackson@fidessa.com> no 2020-09-22
0020-Use-python3-for-vimspector.patch [PATCH] Use python3 for vimspector Ben Jackson <puremourning@gmail.com> no 2020-10-16
0021-Fix-signature-help-traceback-when-using-preview-popu.patch [PATCH] Fix signature help traceback when using preview popup
When we made YCM parse buffers with no filetype, this ended up including
the buffers within things like popups. Unfortuantely this leads to a
problem that we call "ClearSignatureHelp" from within
"FileReadyToParse". If the "FileReadyToParse" in question was within a
popup, we ge an error "Not valid in popup window" (referring to a call
to popup_close()) and vim gets in a very bad state.

it's not obvious how to solve this in the general case, but for now as
completion in non-filetype buffers is new and rare, we Blacklist enpty
buffers by default to work around the bug.

We allow users to explicitly enable it (and suffer this bug!) by
explicitly whiteliisting it again in ycm_filetype_whitelist.

Added a test which shows that it works when ycm_nofiletyp is
blacklisted, and another test which exercises the (still) broken
behaviour, when ycm_nofiletype is whitelisted.
Ben Jackson <puremourning@gmail.com> no 2020-10-16
0022-Add-way-to-backup-restore-setting-in-tests.patch [PATCH] Add way to backup/restore setting in tests
Added youcompleteme#test#setup#PushGlobal and PopGlobal, used in SetUp
and TearDown fixtures for individual test funcitons.
Ben Jackson <puremourning@gmail.com> no 2020-10-20
0023-Minimum-requirements-will-change-.-soon.patch [PATCH] Minimum requirements will change .. soon. Ben Jackson <puremourning@users.noreply.github.com> no 2020-10-24
0024-We-will-still-support-building-with-clang-7.patch [PATCH] We will still support building with clang 7 Boris Staletic <boris.staletic@gmail.com> no 2020-10-25
00-path-to-server-script.patch Use Debian's ycmd package locations for ycmd. We neither have the third_party directory for vim-youcompleteme nor
for ycmd, so we can't import them and we don't want to either.
.
This means we can drop lots and lots of complicated code as we know
by virtue of dependencies where everything is and that it is good
David Kalnischkies <donkult@debian.org> not-needed 2020-10-28
01-allow-tests-to-be-run.patch Use Debian's ycmd package locations for ycmd in tests We neither have the third_party directory for vim-youcompleteme nor
for ycmd, so we can't import them and we don't want to either.
.
The two python tests are removed as we have always Python installed
in Debian due to dependencies and the tests can for some reason not
override this properly.
David Kalnischkies <donkult@debian.org> not-needed
02-use-old-hamcrest-api-for-tests.patch Use old pyhamcrest API in tests Upstream has switched away from the deprecated contains() in
favour of contains_exactly(), but this is not included yet in
the version of pyhamcrest packaged in Debian, so this patch switches
back to the old API to decouple us from the pyhamcrest update.
.
The patch was autogenerated by:
sed -i 's#contains_exactly#contains#g' python/ycm/tests/*.py
David Kalnischkies <donkult@debian.org> not-needed 2020-10-28
03-do-not-override-unset-ycmd-settings.patch Load ycmd default settings from its default_settings.json Upstream prefers to keep the configuration in one place, but as Debian has
ycmd and vim-youcompleteme in two different packages and can update them
independently it makes more sense to not override the defaults ycmd has
as that would require updating both packages then.
.
This is still the case as the configuration options are only documented here
as they can only be changed sensible from here by the user, but it allows at
least the package maintainer to change options in one place and only have the
documentation lagging behind (or ahead) slightly.
David Kalnischkies <donkult@debian.org> invalid 2020-10-28

All known versions for source package 'vim-youcompleteme'

Links