Closed tcoopman closed 5 years ago
This is happening to me on OSX with homebrew install neovim 0.3.1 (also when I use brew install --HEAD neovim
)
my python versions:
~ ➤ python --version
Python 2.7.15
~ ➤ python3 --version
Python 3.7.1
And yes neovim was install with both pip and pip3
Downgrading to Python 3.6.5_1 from 3.7.1 fixed this problem for me. It's probably connected to this:
https://github.com/Shougo/denite.nvim/issues/529
> brew uninstall --ignore-dependencies python3
> brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb
> pip3 install --upgrade pip neovim
Downgrading to Python 3.6.5_1 from 3.7.1 fixed this problem for me. It's probably connected to this:
529
No. Because the feature is not implemented yet.
I have Python3.7.1 but I don't reproduce the behavior.
Please upload the real minimal init.vim if not I will close the issue.
I have tested it with the minimal vimrc and it works.
set rtp+=~/work/denite.nvim
NVIM v0.3.2-908-g016ebb418
Old. Please use the latest version.
@tcoopman @dmix Please read the issue.
https://github.com/ncm2/ncm2/pull/102
You must uninstall neovim and pynvim module from Python and reinstall pynvim module.
This is happening to me on OSX with homebrew install neovim 0.3.1 (also when I use brew install --HEAD neovim)
Unfortunately, you should build neovim from source manually.
- INFO: `g:python3_host_prog` is not set. Searching for python3 in the environment.
- INFO: Multiple python3 executables found. Set `g:python3_host_prog` to avoid surprises.
- INFO: Executable: /usr/bin/python3
- INFO: Other python executable: /bin/python3
It seems danger. You should use g:python3_host_prog
.
I think your pynvim
module is not compatible with neovim.
Because your neovim is old.
If you use the latest pynvim
, you must use the latest neovim.
I have the same issue. Shougo, you are doing us all an immense service by supporting denite. It's an invaluable tool, and a fantastic gift to the neovim community. I'm sorry you're getting so much unpaid support work on your plate, most of which is not even related to denite. Including probably this:
I've just upgraded neovim, pynvim and denite to latest master.
Since then, when running :UpdateRemotePlugins
:
Encountered TypeError loading plugin at /home/thib/denite.nvim/rplugin/python3/denite: cannot unpack non-iterable ModuleSpec object
Traceback (most recent call last):
File "/usr/lib/python3.7/site-packages/pynvim/plugin/host.py", line 134, in _load
file, pathname, descr = find_module(name, [directory])
TypeError: cannot unpack non-iterable ModuleSpec object
remote/host: python3 host registered plugins []
remote/host: generated rplugin manifest: /home/thib/.local/share/nvim/rplugin.vim
OS: ArchLinux neovim: latest master
NVIM v0.3.2-923-g271c5df41
Build type: RelWithDebInfo
LuaJIT 2.0.5
Compilation: /usr/bin/cc -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt -Wconversion -O2 -g -DMIN_LOG_LEVEL=3 -Og -g -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wimplicit-fallthrough -Wvla -fstack-protector-strong -fdiagnostics-color=auto -Wno-array-bounds -DINCLUDE_GENERATED_DECLARATIONS -D_GNU_SOURCE -DNVIM_MSGPACK_HAS_FLOAT32 -DNVIM_UNIBI_HAS_VAR_FROM -I/tmp/yaourt-tmp-thib/aur-neovim-git/src/neovim-git/build/config -I/tmp/yaourt-tmp-thib/aur-neovim-git/src/neovim-git/src -I/usr/include -I/tmp/yaourt-tmp-thib/aur-neovim-git/src/neovim-git/build/src/nvim/auto -I/tmp/yaourt-tmp-thib/aur-neovim-git/src/neovim-git/build/include
Compiled by thib@bogota
Features: +acl +iconv +jemalloc +tui
denite: latest master db2d7c307e70a4575baea3097e0977b59696e855
checkhealth
:
health#nvim#check
========================================================================
## Configuration
- OK: no issues found
## Performance
- OK: Build type: RelWithDebInfo
## Remote Plugins
- WARNING: "denite.nvim" is not registered.
- WARNING: Out of date
- ADVICE:
- Run `:UpdateRemotePlugins`
## terminal
- INFO: key_backspace (kbs) terminfo entry: key_backspace=^H
- INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
- INFO: $COLORTERM='truecolor'
health#provider#check
========================================================================
## Clipboard (optional)
- OK: Clipboard tool found: xsel
## Python 2 provider (optional)
- INFO: `g:python_host_prog` is not set. Searching for python2 in the environment.
- INFO: Executable: /usr/bin/python2
- INFO: Python version: 2.7.15
- INFO: pynvim version: 0.3.1
- OK: Latest pynvim is installed.
## Python 3 provider (optional)
- INFO: `g:python3_host_prog` is not set. Searching for python3 in the environment.
- INFO: Executable: /usr/bin/python3
- INFO: Python version: 3.7.1
- INFO: pynvim version: 0.3.1
- OK: Latest pynvim is installed.
## Ruby provider (optional)
- INFO: Ruby: ruby 2.5.3p105 (2018-10-18 revision 65156) [x86_64-linux]
- INFO: Host: /usr/bin/neovim-ruby-host
- OK: Latest "neovim" gem is installed: 0.7.1
## Node.js provider (optional)
- INFO: Node.js: v11.2.0
- WARNING: Missing "neovim" npm (or yarn) package.
- ADVICE:
- Run in shell: npm install -g neovim
- Run in shell (if you use yarn): yarn global add neovim
set runtimepath+=~/denite.nvim/
nvim -u vimrc # using the one-liner vimrc above
:UpdateRemotePlugins
Note: I have the same issue with deoplete
.
OK I've been investigating this and made some progress. I think the issue comes from this pynvim commit from last week: https://github.com/neovim/pynvim/commit/a29f34e98e2b4d5ad8821bf5fd679cf7ba0a9b7d and more specifically
if sys.version_info >= (3, 4):
from importlib.machinery import PathFinder
original_find_module = PathFinder.find_spec
else:
from imp import find_module as original_find_module
pynvim used to rely on imp import find_module as original_find_module
, and this would work fine. But now instead it relies on original_find_module = PathFinder.find_spec
and this breaks with cannot unpack non-iterable ModuleSpec object
.
I shall file a bug on pynvim now.
Really Shougo I feel for you, getting all the bug reports that your code has nothing to do with.
We love denite, we love deoplete, we love you <3 <3 <3 Keep on rocking
I use NVim 0.3.2-5809
.
NVIM v0.3.2-923-g271c5df41
Your version is not latest.
I think your version of neovim is not compatible with the latest pynvim. Please test the latest neovim.
And Arch Linux's neovim package master is not the latest. I don't recommend for you to use it.
I thought g271c5df41
referred to the latest neovim master commit 271c5df41603f5427540082a3f8790bca0fd7595
as seen on https://github.com/neovim/neovim https://i.imgur.com/SSNe6Gl.png
Thanks for your reply, I'll try a manual neovim build now instead of using the archlinux git- package.
Hm.
https://github.com/neovim/pynvim/commit/a29f34e98e2b4d5ad8821bf5fd679cf7ba0a9b7d
The commit checks Python3.7, so it may break Python 3.7 environment. But why it is not reproduced in my Python 3.7 environment?
It should be reported in https://github.com/neovim/pynvim/issues though.
Yep that was the plan.
By the way I cloned and built neovim myself, and got the same version exactly:
./build/bin/nvim --version
NVIM v0.3.2-923-g271c5df41
Build type: Debug
[...]
I do think archlinux neovim-git package builds latest neovim master. Just FYI.
I have re-build the neovim master. It works fine.
A fix has landed on pynvim https://github.com/neovim/pynvim/commit/3efa4878464021f2c23b311f43a599318595177d
So I guess this issue can be closed now. Thank you all
I've just upgrade to neovim-git and
UpgradeRemotePlugins
doesn't work anymore.Problems summary
I get this error on running
UpgradeRemotePlugins
Expected
It should still work
Environment Information (Required!)
denite version (SHA1): latest commit is 7ddd820ed731fa4287b1d4559eb67712a3279abe
OS: archlinux
Vim/neovim version:
Features: +acl +iconv +jemalloc +tui See ":help feature-compile"
system vimrc file: "$VIM/sysinit.vim" fall-back for $VIM: "/usr/share/nvim"
health#LanguageClient#check
health#nvim#check
Configuration
Performance
Remote Plugins
:UpdateRemotePlugins
terminal
tmux
health#provider#check
Clipboard (optional)
Python 2 provider (optional)
Python 3 provider (optional)
g:python3_host_prog
is not set. Searching for python3 in the environment.g:python3_host_prog
to avoid surprises.Ruby provider (optional)
neovim-ruby-host
not found.gem install neovim
to ensure the neovim RubyGem is installed.gem environment
to ensure the gem bin directory is in $PATH.Node.js provider (optional)
Provide a minimal init.vim with less than 50 lines (Required!)
How to reproduce problems from neovim startup (Required!)
UpgradeRemotePlugins