Skip to content

YouCompleteMe stopped working after update to 8.1.560 #803

Closed

Description

@tupos

Hello,

After I updated today to the latest version 8.1.560 YouCompleteMe stopped working. I guess it is related to the change in handling of python in macvim.

When I install YouCompleteMe i usually install through python3. However, I think that due to the change in macvim 8.1.560, python2 is taken as default. Therefore, I have an error

YouCompleteMe unavailable: dlopen(/usr/local/Cellar/python@2/2.7.15_1/Frameworks/Pytho
n.framework/Versions/2.7/lib/python2.7/lib-dynload/_io.so, 2): Symbol not found: __PyC
odecInfo_GetIncrementalDecoder
  Referenced from: /usr/local/Cellar/python@2/2.7.15_1/Frameworks/Python.framework/Ver
sions/2.7/lib/python2.7/lib-dynload/_io.so
  Expected in: flat namespace
 in /usr/local/Cellar/python@2/2.7.15_1/Frameworks/Python.framework/Versions/2.7/lib/p
ython2.7/lib-dynload/_io.so

Usually I install YouCompleteMe as

python3 install.py --clang-completer

Before the latest update everything was working fine.
Also everything is working fine with homebrew vim.

MacOS 10.13.6

P.S. I think it is related to lines 32-33 of this file #739, here

Thanks.

Activity

  1. LukeOrgana commented on Dec 7, 2018

    @LukeOrgana

    I am also having problems with YouCompleteMe using MacVim 8.1.560.

  2. zhipengyan commented on Dec 9, 2018

    @zhipengyan

    Me too

  3. rseddon commented on Dec 9, 2018

    @rseddon

    I downgraded to the previous version, and youcompleteme works again. So this does seem to be a regression.

  4. bstaletic commented on Dec 10, 2018

    @bstaletic
    Contributor

    YouCompleteMe maintainer here. The error you see isn't YCM specific. Your vim can't do :py import _io, even though _io is part of the Python's standard library.

  5. ychin commented on Dec 10, 2018

    @ychin
    Member

    I cannot give too much insight into YCM since I don't use the plugin. Do you know how YCM selects python2 versus python3 in Vim? Is it by magic or manual configuration? That may shed some insight why it switched from Python3 in previous MacVim version to Python2.

    Does Python3 still work for you in MacVim in general? You can type :python3 print('testing') to see if it does. It could be that it's now linking to a different version from what your machine has installed. Either way can you paste what you see when you do :set pythondll? and set pythonthreedll?

  6. tupos commented on Dec 10, 2018

    @tupos
    Author

    I think that the problem is there

    P.S. I think it is related to lines 32-33 of this file #739, here

    There is a typo. insted set pythondll it is written set pythonthreedll in the section about python2.

    Can you check this?

  7. ychin commented on Dec 10, 2018

    @ychin
    Member

    Yes I just saw that line after posting. I will fix that. Thanks.

  8. added this to the snapshot-153 milestone on Dec 10, 2018
  9. added 2 commits that reference this issue on Dec 10, 2018
    e92be4c
    7c26ef0
  10. tupos commented on Dec 10, 2018

    @tupos
    Author

    I just looked at you commit e92be4c. But the lines 32 and 33 are still the same and it appears that pythonthreedll is set to python2.

        set pythonthreedll=/Library/Frameworks/Python.framework/Versions/2.7/Python
        set pythonthreehome=/Library/Frameworks/Python.framework/Versions/2.7
    

    Am I missing something?

  11. tupos commented on Dec 10, 2018

    @tupos
    Author

    Ahh sorry. Did not see your further commit.

  12. ychin commented on Dec 10, 2018

    @ychin
    Member

    There are two bugs in that original PR. I had to fix both :)

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions