wsdjeg / dein-ui.vim

UI for Shougo's dein.vim
GNU General Public License v3.0
162 stars 12 forks source link

Error when using :DeinUpdate #11

Open Gordin opened 4 years ago

Gordin commented 4 years ago

I'm getting this error when I use :DeinUpdate

Error detected while processing function SpaceVim#commands#update_plugin[9]..SpaceVim#plugins#manager#update:
line   56:
E474: Invalid argument

I tried to look into the code in this repo to figure this out, but I don't know enough vimscript for this... When I press ENTER everything seems to work fine after that though.

I'm using nvim 0.5.0 Output of checkhealth:

health#nvim#check
========================================================================
## Configuration
  - OK: no issues found

## Performance
  - OK: Build type: RelWithDebInfo

## Remote Plugins
  - OK: Up to date

## terminal
  - INFO: key_backspace (kbs) terminfo entry: key_backspace=^H
  - INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
  - INFO: $COLORTERM='yes'

health#provider#check
========================================================================
## Clipboard (optional)
  - WARNING: No clipboard tool found. Clipboard registers (`"+` and `"*`) will not work.
    - ADVICE:
      - :help clipboard

## Python 2 provider (optional)
  - INFO: `g:python_host_prog` is not set.  Searching for python2 in the environment.
  - INFO: Multiple python2 executables found.  Set `g:python_host_prog` to avoid surprises.
  - INFO: Executable: /usr/sbin/python2
  - INFO: Other python executable: /usr/bin/python2
  - INFO: Other python executable: /sbin/python2
  - INFO: Other python executable: /bin/python2
  - INFO: Python version: 2.7.18
  - INFO: pynvim version: 0.4.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: Multiple python3 executables found.  Set `g:python3_host_prog` to avoid surprises.
  - INFO: Executable: /usr/sbin/python3
  - INFO: Other python executable: /usr/bin/python3
  - INFO: Other python executable: /sbin/python3
  - INFO: Other python executable: /bin/python3
  - INFO: Python version: 3.8.2
  - INFO: pynvim version: 0.4.1
  - OK: Latest pynvim is installed.

## Python virtualenv
  - OK: no $VIRTUAL_ENV

## Ruby provider (optional)
  - INFO: Ruby: ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x86_64-linux]
  - INFO: Host: /usr/sbin/neovim-ruby-host
  - OK: Latest "neovim" gem is installed: 0.8.1

## Node.js provider (optional)
  - WARNING: `node` and `npm` (or `yarn`) must be in $PATH.
    - ADVICE:
      - Install Node.js and verify that `node` and `npm` (or `yarn`) commands work.

## Perl provider (optional)
  - WARNING: `perl` and `cpanm` must be in $PATH.
    - ADVICE:
      - Install Perl and cpanminus and verify that `perl` and `cpanm` commands work.
Freed-Wu commented 4 years ago

In autoload/SpaceVim/plugin/manager.vim, there is a function SpaceVim#plugins#manager#update() in line187, the line 187+56=243, there is

call delete(repo.path, 'rf')

the variable repo comes from line 235:

let repo = dein#get(reponame)

the reponame comes from line 234

let reponame = s:LIST.shift(s:plugins)

when dein#get(reponame) is an empty dictionary which don't have the key 'path', will return an error. perhaps this is the origin of this error.