title: Python 3.6.8 - Jedi - ImportError: cannot import name 'traverse_parents'
body: <p><strong>&lt;TL;DR&gt;</strong></p>
  <p>When running <code>import jedi</code> in python 3.6.8 I get the following import error (see end of post for  full traceback):</p>
  <pre><code>...
  from jedi.common import traverse_parents
  ImportError: cannot import name 'traverse_parents'
  </code></pre>
  <p><strong>&lt;/TL;DR&gt;</strong></p>
  <p>I checked in <code>~/.local/lib/python3.6/site-packages/jedi/common.py</code> : There's a function called <code>traverse_parents</code> alright so there's definitely some witchery at work. Not the first time I've run into one of those &quot;undefined name&quot; problems, but I'm running out of ideas on this one.</p>
  <p>Already tried :</p>
  <ul>
  <li>uninstalling, reinstalling, upgrading the &quot;jedi&quot; package for pip3</li>
  <li>pretty much the same jazz for a couple other packages with &quot;jedi&quot; in their names</li>
  <li>upgrading pip3 to 20.2.1 and redoing the same reinstalling routine</li>
  <li>installing jedi for python2 because why not (hey, it works fine in python2 but who cares)</li>
  <li>also tried installing python-jedi from apt-get (I removed it afterwards)</li>
  <li>incantations to ancient Babylonian demons (to no avail, they don't work Sundays)</li>
  </ul>
  <p>Vague clues on how I might fix it :</p>
  <ul>
  <li>getting the latest version of jedi from github and somehow installing it without making a mess (fat chance)</li>
  <li>uninstalling jedi and reinstalling it from within Neovim (hey that might achieve the previous point)</li>
  </ul>
  <p>I've scoured the web for the answer to this problem but I'm getting nowhere. Has anyone experienced something similar and managed to solve it ?</p>
  <p>Any suggestion welcome.</p>
  <hr />
  <p><strong>The full traceback :</strong></p>
  <pre><code>Error detected while processing function provider#python3#Call:
  line   18:                                                                                                                             
  Error invoking 'python_execute' on channel 5 (python3-script-host):
  Traceback (most recent call last):
    File &quot;&lt;string&gt;&quot;, line 1, in &lt;module&gt;
    File &quot;/home/vee/.local/lib/python3.6/site-packages/jedi/__init__.py&quot;, line 32, in &lt;module&gt;
      from jedi.api import Script, Interpreter, set_debug_funcion, \
    File &quot;/home/vee/.local/lib/python3.6/site-packages/jedi/api/__init__.py&quot;, line 24, in &lt;module&gt;
      from jedi.api import classes
    File &quot;/home/vee/.local/lib/python3.6/site-packages/jedi/api/classes.py&quot;, line 26, in &lt;module&gt;
      from jedi.inference import imports
    File &quot;/home/vee/.local/lib/python3.6/site-packages/jedi/inference/__init__.py&quot;, line 70, in &lt;module&gt;
      from jedi.inference import imports
    File &quot;/home/vee/.local/lib/python3.6/site-packages/jedi/inference/imports.py&quot;, line 24, in &lt;module&gt;
      from jedi.inference import sys_path
    File &quot;/home/vee/.local/lib/python3.6/site-packages/jedi/inference/sys_path.py&quot;, line 8, in &lt;module&gt;
      from jedi.common import traverse_parents
  ImportError: cannot import name 'traverse_parents'
  </code></pre>