Opened 5 years ago

Closed 5 years ago

#4091 closed defect (fixed)

Python shell autocomplete: _queue.Empty

Reported by: Tony Schaefer Owned by: Eric Pettersen
Priority: normal Milestone:
Component: General Controls Version:
Keywords: Cc: Tom Goddard
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        Windows-10-10.0.19041
ChimeraX Version: 1.2.dev202012242219 (2020-12-24 22:19:47 UTC)
Description
Pressing tab to autocomplete in the shell causes an error. I started typing "min", hitting tab after "mi". 

Log:
> cd C:\Users\normn/Desktop

Current working directory is: C:\Users\normn\Desktop  
UCSF ChimeraX version: 1.2.dev202012242219 (2020-12-24)  
© 2016-2020 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> ui tool show Shell

ERROR:ipykernel.inprocess.ipkernel:Exception in message handler:  
Traceback (most recent call last):  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\ipykernel\kernelbase.py", line 268, in dispatch_shell  
yield gen.maybe_future(handler(stream, idents, msg))  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\tornado\gen.py", line 762, in run  
value = future.result()  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\tornado\gen.py", line 234, in wrapper  
yielded = ctx_run(next, result)  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\ipykernel\kernelbase.py", line 583, in complete_request  
matches = yield gen.maybe_future(self.do_complete(code, cursor_pos))  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\ipykernel\ipkernel.py", line 360, in do_complete  
return self._experimental_do_complete(code, cursor_pos)  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\ipykernel\ipkernel.py", line 385, in _experimental_do_complete  
completions = list(_rectify_completions(code, raw_completions))  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\IPython\core\completer.py", line 484, in rectify_completions  
completions = list(completions)  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\IPython\core\completer.py", line 1818, in completions  
for c in self._completions(text, offset,
_timeout=self.jedi_compute_type_timeout/1000):  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\IPython\core\completer.py", line 1861, in _completions  
matched_text, matches, matches_origin, jedi_matches = self._complete(  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\IPython\core\completer.py", line 2029, in _complete  
completions = self._jedi_matches(  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\IPython\core\completer.py", line 1373, in _jedi_matches  
interpreter = jedi.Interpreter(  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\jedi\api\\__init__.py", line 725, in __init__  
super().__init__(code, environment=environment,  
TypeError: __init__() got an unexpected keyword argument 'column'  
Traceback (most recent call last):  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\qtconsole\console_widget.py", line 427, in eventFilter  
return self._event_filter_console_keypress(event)  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\qtconsole\frontend_widget.py", line 339, in
_event_filter_console_keypress  
return super(FrontendWidget, self)._event_filter_console_keypress(event)  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\qtconsole\console_widget.py", line 1416, in
_event_filter_console_keypress  
if self._tab_pressed():  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\qtconsole\frontend_widget.py", line 283, in _tab_pressed  
self._complete()  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\qtconsole\frontend_widget.py", line 721, in _complete  
msg_id = self.kernel_client.complete(code=code, cursor_pos=cursor_pos)  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\ipykernel\inprocess\client.py", line 117, in complete  
self._dispatch_to_kernel(msg)  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\ipykernel\inprocess\client.py", line 179, in _dispatch_to_kernel  
idents, reply_msg = self.session.recv(stream, copy=False)  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\jupyter_client\session.py", line 807, in recv  
msg_list = socket.recv_multipart(mode, copy=copy)  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\site-
packages\ipykernel\inprocess\socket.py", line 57, in recv_multipart  
return self.queue.get_nowait()  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\queue.py", line
198, in get_nowait  
return self.get(block=False)  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\queue.py", line
167, in get  
raise Empty  
_queue.Empty  
  
_queue.Empty  
  
File "C:\Program Files\ChimeraX 1.2.dev202012242219\bin\lib\queue.py", line
167, in get  
raise Empty  
  
See log for complete Python traceback.  
  




OpenGL version: 3.3.0 NVIDIA 452.41
OpenGL renderer: GeForce 940M/PCIe/SSE2
OpenGL vendor: NVIDIA Corporation
Manufacturer: Hewlett-Packard
Model: HP Pavilion Notebook 
OS: Microsoft Windows 10 Home (Build 19041)
Memory: 8,508,424,192
MaxProcessMemory: 137,438,953,344
CPU: 4 Intel(R) Core(TM) i7-5500U CPU @ 2.40GHz
OSLanguage: en-US
Locale: ('en_US', 'cp1252')
PySide2 version: 5.15.2
Qt version: 5.15.2
Installed Packages:
    alabaster: 0.7.12
    appdirs: 1.4.4
    Babel: 2.9.0
    backcall: 0.2.0
    blockdiag: 2.0.1
    certifi: 2020.12.5
    cftime: 1.3.0
    chardet: 3.0.4
    ChimeraX-AddH: 2.1.3
    ChimeraX-AlignmentAlgorithms: 2.0
    ChimeraX-AlignmentHdrs: 3.2
    ChimeraX-AlignmentMatrices: 2.0
    ChimeraX-Alignments: 2.1
    ChimeraX-Arrays: 1.0
    ChimeraX-Atomic: 1.10
    ChimeraX-AtomicLibrary: 1.1
    ChimeraX-AtomSearch: 2.0
    ChimeraX-AtomSearchLibrary: 1.0
    ChimeraX-AxesPlanes: 2.0
    ChimeraX-BasicActions: 1.1
    ChimeraX-BILD: 1.0
    ChimeraX-BlastProtein: 1.1
    ChimeraX-BondRot: 2.0
    ChimeraX-BugReporter: 1.0
    ChimeraX-BuildStructure: 2.2
    ChimeraX-Bumps: 1.0
    ChimeraX-BundleBuilder: 1.1
    ChimeraX-ButtonPanel: 1.0
    ChimeraX-CageBuilder: 1.0
    ChimeraX-CellPack: 1.0
    ChimeraX-Centroids: 1.1
    ChimeraX-ChemGroup: 2.0
    ChimeraX-Clashes: 2.1
    ChimeraX-ColorActions: 1.0
    ChimeraX-ColorGlobe: 1.0
    ChimeraX-CommandLine: 1.1.3
    ChimeraX-ConnectStructure: 2.0
    ChimeraX-Contacts: 1.0
    ChimeraX-Core: 1.2.dev202012242219
    ChimeraX-CoreFormats: 1.0
    ChimeraX-coulombic: 1.0.2
    ChimeraX-Crosslinks: 1.0
    ChimeraX-Crystal: 1.0
    ChimeraX-DataFormats: 1.1
    ChimeraX-Dicom: 1.0
    ChimeraX-DistMonitor: 1.1
    ChimeraX-DistUI: 1.0
    ChimeraX-Dssp: 2.0
    ChimeraX-EMDB-SFF: 1.0
    ChimeraX-ExperimentalCommands: 1.0
    ChimeraX-FileHistory: 1.0
    ChimeraX-FunctionKey: 1.0
    ChimeraX-Geometry: 1.1
    ChimeraX-gltf: 1.0
    ChimeraX-Graphics: 1.0
    ChimeraX-Hbonds: 2.1
    ChimeraX-Help: 1.0
    ChimeraX-HKCage: 1.3
    ChimeraX-IHM: 1.0
    ChimeraX-ImageFormats: 1.1
    ChimeraX-IMOD: 1.0
    ChimeraX-IO: 1.0
    ChimeraX-Label: 1.0
    ChimeraX-ListInfo: 1.1
    ChimeraX-Log: 1.1.1
    ChimeraX-LookingGlass: 1.1
    ChimeraX-Map: 1.0.2
    ChimeraX-MapData: 2.0
    ChimeraX-MapEraser: 1.0
    ChimeraX-MapFilter: 2.0
    ChimeraX-MapFit: 2.0
    ChimeraX-MapSeries: 2.0
    ChimeraX-Markers: 1.0
    ChimeraX-Mask: 1.0
    ChimeraX-MatchMaker: 1.1
    ChimeraX-MDcrds: 2.2
    ChimeraX-MedicalToolbar: 1.0.1
    ChimeraX-Meeting: 1.0
    ChimeraX-MLP: 1.0
    ChimeraX-mmCIF: 2.2
    ChimeraX-MMTF: 2.0
    ChimeraX-Modeller: 1.0
    ChimeraX-ModelPanel: 1.0
    ChimeraX-ModelSeries: 1.0
    ChimeraX-Mol2: 2.0
    ChimeraX-Morph: 1.0
    ChimeraX-MouseModes: 1.0
    ChimeraX-Movie: 1.0
    ChimeraX-Neuron: 1.0
    ChimeraX-Nucleotides: 2.0
    ChimeraX-OpenCommand: 1.4
    ChimeraX-PDB: 2.2
    ChimeraX-PDBBio: 1.0
    ChimeraX-PDBLibrary: 1.0
    ChimeraX-PickBlobs: 1.0
    ChimeraX-Positions: 1.0
    ChimeraX-PresetMgr: 1.0.1
    ChimeraX-PubChem: 2.0.1
    ChimeraX-Read-Pbonds: 1.0
    ChimeraX-Registration: 1.1
    ChimeraX-RemoteControl: 1.0
    ChimeraX-ResidueFit: 1.0
    ChimeraX-RestServer: 1.1
    ChimeraX-RNALayout: 1.0
    ChimeraX-RotamerLibMgr: 2.0
    ChimeraX-RotamerLibsDunbrack: 2.0
    ChimeraX-RotamerLibsDynameomics: 2.0
    ChimeraX-RotamerLibsRichardson: 2.0
    ChimeraX-SaveCommand: 1.3
    ChimeraX-SchemeMgr: 1.0
    ChimeraX-SDF: 2.0
    ChimeraX-Segger: 1.0
    ChimeraX-Segment: 1.0
    ChimeraX-SEQCROW: 0.24a0
    ChimeraX-SeqView: 2.3
    ChimeraX-Shape: 1.0.1
    ChimeraX-Shell: 1.0
    ChimeraX-Shortcuts: 1.0
    ChimeraX-ShowAttr: 1.0
    ChimeraX-ShowSequences: 1.0
    ChimeraX-SideView: 1.0
    ChimeraX-Smiles: 2.0.1
    ChimeraX-SmoothLines: 1.0
    ChimeraX-SpaceNavigator: 1.0
    ChimeraX-StdCommands: 1.2.2
    ChimeraX-STL: 1.0
    ChimeraX-Storm: 1.0
    ChimeraX-Struts: 1.0
    ChimeraX-Surface: 1.0
    ChimeraX-SwapAA: 2.0
    ChimeraX-SwapRes: 2.0
    ChimeraX-TapeMeasure: 1.0
    ChimeraX-Test: 1.0
    ChimeraX-Toolbar: 1.0
    ChimeraX-ToolshedUtils: 1.1
    ChimeraX-Tug: 1.0
    ChimeraX-UI: 1.3.2
    ChimeraX-uniprot: 2.1
    ChimeraX-ViewDockX: 1.0
    ChimeraX-Vive: 1.1
    ChimeraX-VolumeMenu: 1.0
    ChimeraX-VTK: 1.0
    ChimeraX-WavefrontOBJ: 1.0
    ChimeraX-WebCam: 1.0
    ChimeraX-WebServices: 1.0
    ChimeraX-Zone: 1.0
    colorama: 0.4.3
    comtypes: 1.1.7
    cxservices: 1.0
    cycler: 0.10.0
    Cython: 0.29.21
    decorator: 4.4.2
    distlib: 0.3.1
    docutils: 0.16
    filelock: 3.0.12
    funcparserlib: 0.3.6
    grako: 3.16.5
    h5py: 2.10.0
    html2text: 2020.1.16
    idna: 2.10
    ihm: 0.17
    imagecodecs: 2020.5.30
    imagesize: 1.2.0
    ipykernel: 5.3.4
    ipython: 7.18.1
    ipython-genutils: 0.2.0
    jedi: 0.18.0
    Jinja2: 2.11.2
    jupyter-client: 6.1.7
    jupyter-core: 4.7.0
    kiwisolver: 1.3.1
    line-profiler: 2.1.2
    lxml: 4.5.2
    lz4: 3.1.0
    MarkupSafe: 1.1.1
    matplotlib: 3.3.2
    msgpack: 1.0.0
    netCDF4: 1.5.4
    networkx: 2.5
    numexpr: 2.7.1
    numpy: 1.19.2
    numpydoc: 1.1.0
    openvr: 1.14.1501
    packaging: 20.8
    parso: 0.8.1
    pickleshare: 0.7.5
    Pillow: 7.2.0
    pip: 20.3.1
    pkginfo: 1.5.0.1
    prompt-toolkit: 3.0.8
    psutil: 5.7.2
    pycollada: 0.7.1
    pydicom: 2.0.0
    Pygments: 2.7.1
    PyOpenGL: 3.1.5
    PyOpenGL-accelerate: 3.1.5
    pyparsing: 2.4.7
    PySide2: 5.15.2
    python-dateutil: 2.8.1
    pytz: 2020.5
    pywin32: 228
    pyzmq: 20.0.0
    qtconsole: 4.7.7
    QtPy: 1.9.0
    RandomWords: 0.3.0
    requests: 2.24.0
    scipy: 1.5.2
    Send2Trash: 1.5.0
    setuptools: 50.3.2
    sfftk-rw: 0.6.7.dev1
    shiboken2: 5.15.2
    six: 1.15.0
    snowballstemmer: 2.0.0
    sortedcontainers: 2.2.2
    Sphinx: 3.2.1
    sphinxcontrib-applehelp: 1.0.2
    sphinxcontrib-blockdiag: 2.0.0
    sphinxcontrib-devhelp: 1.0.2
    sphinxcontrib-htmlhelp: 1.0.3
    sphinxcontrib-jsmath: 1.0.1
    sphinxcontrib-qthelp: 1.0.3
    sphinxcontrib-serializinghtml: 1.1.4
    suds-jurko: 0.6
    tables: 3.6.1
    tifffile: 2020.9.3
    tinyarray: 1.2.3
    tornado: 6.1
    traitlets: 5.0.5
    urllib3: 1.25.11
    wcwidth: 0.2.5
    webcolors: 1.11.1
    wheel: 0.36.0
    wheel-filename: 1.2.0
    WMI: 1.5.1

Change History (2)

comment:1 by Eric Pettersen, 5 years ago

Component: UnassignedGeneral Controls
Owner: set to Eric Pettersen
Platform: all
Project: ChimeraX
Status: newaccepted
Summary: ChimeraX bug report submissionPython shell autocomplete: _queue.Empty

comment:2 by Eric Pettersen, 5 years ago

Cc: Tom Goddard added
Resolution: fixed
Status: acceptedclosed

ipython implicitly relies on the 'jedi' module for auto-completion, and the newest version of jedi does not work with the version of ipython that we are using (nor with the latest version of ipython). Put in an explicit requirement for an older version of jedi that does work.

Note: See TracTickets for help on using tickets.