Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Installing the newest version of pynvim makes Ultisnips laggy #1529

Closed
jsr-p opened this issue Apr 3, 2023 · 2 comments
Closed

Installing the newest version of pynvim makes Ultisnips laggy #1529

jsr-p opened this issue Apr 3, 2023 · 2 comments

Comments

@jsr-p
Copy link

jsr-p commented Apr 3, 2023

Hi

Today I cloned the package pynvim and installed the package directly instead from PyPi.

After reopening nvim I noticed that nvim was very laggy in all python files.
I found out that the issue was with Ultisnips.
Deleting the package and reinstalling it from PyPi made the lag go away.

The version of pynvim on PyPi is 4.3 and so I went through the git history to check where something significant changed.
I located the issue to be this PR neovim/pynvim#506.
This PR changes a num_to_str function to include a boolean check.
The helper function is used in the LegacyVim object's eval function here.
Browsing through this repo's source code reveals that Ultisnips uses vim.eval at many places.

I wonder what could be done to circument this issue?
Profiling different variations of the num_to_str function did not reveal any significant speed up 🤠
I have also made an issue at pynvim's repo here.

@SirVer
Copy link
Owner

SirVer commented Apr 22, 2023

@jsr-p That sucks... yet another new bug that only affects neovim. I am sorry, but I cannot support neovim currently.

This issue was closed due to it only affecting Neovim and not core Vim.

Why is Neovim only best-effort?

UltiSnips maintenance is a lot of work. Reproducing bug reports is tedious, slow and error prone. The current maintainers have to limit their scope to provide a reasonable level of service to the community.

Neovim should work with any plugin that core vim works with. But in the past, Neovim support has been difficult for UltiSnips: It regularly had bugs that did not affect the core Vim distributions, i.e. Vim, gVim, MacVim, and Vim for Windows and its testing approach required a completely separate code path from core as well. Therefore, currently Neovim bugs are considered on a best effort basis.

UltiSnips is looking for an additional maintainer that is interested in bringing the Neovim level of service on par with core Vim. If you are interested in helping out, please reach out to SirVer.

@jsr-p
Copy link
Author

jsr-p commented Apr 26, 2023

@SirVer
Understandable, thanks for the answer!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants