Opened 8 months ago

Last modified 8 months ago

#17336 assigned defect

CliX: operand type(s) for |: 'type' and 'NoneType'

Reported by: srinivasan.rengachari@… Owned by: Hanjin Liu
Priority: normal Milestone:
Component: Third Party Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        macOS-10.13.6-x86_64-i386-64bit
ChimeraX Version: 1.3 (2021-12-08 23:08:33 UTC)
Description
I installed CliX on my chimerax and tried to start it from tools for the first time and I get the python traceback error. Thank youfor helping fix it. 

chimerax.core.toolshed.ToolshedError: start_tool() failed for tool CliX in bundle ChimeraX-clix:
unsupported operand type(s) for |: 'sip.wrappertype' and 'NoneType'

File "/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/chimerax/core/toolshed/info.py", line 559, in start_tool
raise ToolshedError(

See log for complete Python traceback.


Log:
UCSF ChimeraX version: 1.3 (2021-12-08)  
© 2016-2021 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> toolshed show

> ui tool show CliX

Traceback (most recent call last):  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/toolshed/info.py", line 554, in start_tool  
ti = api._api_caller.start_tool(api, session, self, tool_info)  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/toolshed/__init__.py", line 1323, in start_tool  
return cls._get_func(api, "start_tool")(session, bi, ti)  
File "/Users/srengac/Library/Application Support/ChimeraX/1.3/site-
packages/chimerax/clix/_main.py", line 11, in start_tool  
from .tool import ClixTool  
File "/Users/srengac/Library/Application Support/ChimeraX/1.3/site-
packages/chimerax/clix/tool.py", line 5, in <module>  
from .widgets import QCommandLineEdit, QShowHistoryButton, QShowDialogButton  
File "/Users/srengac/Library/Application Support/ChimeraX/1.3/site-
packages/chimerax/clix/widgets/__init__.py", line 2, in <module>  
from .cli_widget import QCommandLineEdit  
File "/Users/srengac/Library/Application Support/ChimeraX/1.3/site-
packages/chimerax/clix/widgets/cli_widget.py", line 8, in <module>  
from .popups import QCompletionPopup, QCommandPalettePopup, QRecentFilePopup,
QTooltipPopup, QSelectablePopup  
File "/Users/srengac/Library/Application Support/ChimeraX/1.3/site-
packages/chimerax/clix/widgets/popups.py", line 16, in <module>  
from ..palette import command_palette_actions, color_text_by_match  
File "/Users/srengac/Library/Application Support/ChimeraX/1.3/site-
packages/chimerax/clix/palette/__init__.py", line 1, in <module>  
from ._iter import command_palette_actions  
File "/Users/srengac/Library/Application Support/ChimeraX/1.3/site-
packages/chimerax/clix/palette/_iter.py", line 84, in <module>  
def _find_label_widget(widget: QtW.QWidget) -> QtW.QLabel | None:  
TypeError: unsupported operand type(s) for |: 'sip.wrappertype' and 'NoneType'  
  
During handling of the above exception, another exception occurred:  
  
Traceback (most recent call last):  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/ui/gui.py", line 1659, in <lambda>  
run(ses, "ui tool show %s" % StringArg.unparse(tool_name)))  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/commands/run.py", line 36, in run  
results = command.run(text, log=log, return_json=return_json)  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/commands/cli.py", line 2856, in run  
result = ci.function(session, **kw_args)  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/ui/cmd.py", line 219, in ui_tool_show  
bi.start_tool(session, name)  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/toolshed/info.py", line 559, in start_tool  
raise ToolshedError(  
chimerax.core.toolshed.ToolshedError: start_tool() failed for tool CliX in
bundle ChimeraX-clix:  
unsupported operand type(s) for |: 'sip.wrappertype' and 'NoneType'  
  
chimerax.core.toolshed.ToolshedError: start_tool() failed for tool CliX in
bundle ChimeraX-clix:  
unsupported operand type(s) for |: 'sip.wrappertype' and 'NoneType'  
  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/toolshed/info.py", line 559, in start_tool  
raise ToolshedError(  
  
See log for complete Python traceback.  
  

> ui tool show CliX

Traceback (most recent call last):  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/toolshed/info.py", line 554, in start_tool  
ti = api._api_caller.start_tool(api, session, self, tool_info)  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/toolshed/__init__.py", line 1323, in start_tool  
return cls._get_func(api, "start_tool")(session, bi, ti)  
File "/Users/srengac/Library/Application Support/ChimeraX/1.3/site-
packages/chimerax/clix/_main.py", line 11, in start_tool  
from .tool import ClixTool  
File "/Users/srengac/Library/Application Support/ChimeraX/1.3/site-
packages/chimerax/clix/tool.py", line 5, in <module>  
from .widgets import QCommandLineEdit, QShowHistoryButton, QShowDialogButton  
File "/Users/srengac/Library/Application Support/ChimeraX/1.3/site-
packages/chimerax/clix/widgets/__init__.py", line 2, in <module>  
from .cli_widget import QCommandLineEdit  
File "/Users/srengac/Library/Application Support/ChimeraX/1.3/site-
packages/chimerax/clix/widgets/cli_widget.py", line 8, in <module>  
from .popups import QCompletionPopup, QCommandPalettePopup, QRecentFilePopup,
QTooltipPopup, QSelectablePopup  
File "/Users/srengac/Library/Application Support/ChimeraX/1.3/site-
packages/chimerax/clix/widgets/popups.py", line 16, in <module>  
from ..palette import command_palette_actions, color_text_by_match  
File "/Users/srengac/Library/Application Support/ChimeraX/1.3/site-
packages/chimerax/clix/palette/__init__.py", line 1, in <module>  
from ._iter import command_palette_actions  
File "/Users/srengac/Library/Application Support/ChimeraX/1.3/site-
packages/chimerax/clix/palette/_iter.py", line 84, in <module>  
def _find_label_widget(widget: QtW.QWidget) -> QtW.QLabel | None:  
TypeError: unsupported operand type(s) for |: 'sip.wrappertype' and 'NoneType'  
  
During handling of the above exception, another exception occurred:  
  
Traceback (most recent call last):  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/ui/gui.py", line 1659, in <lambda>  
run(ses, "ui tool show %s" % StringArg.unparse(tool_name)))  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/commands/run.py", line 36, in run  
results = command.run(text, log=log, return_json=return_json)  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/commands/cli.py", line 2856, in run  
result = ci.function(session, **kw_args)  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/ui/cmd.py", line 219, in ui_tool_show  
bi.start_tool(session, name)  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/toolshed/info.py", line 559, in start_tool  
raise ToolshedError(  
chimerax.core.toolshed.ToolshedError: start_tool() failed for tool CliX in
bundle ChimeraX-clix:  
unsupported operand type(s) for |: 'sip.wrappertype' and 'NoneType'  
  
chimerax.core.toolshed.ToolshedError: start_tool() failed for tool CliX in
bundle ChimeraX-clix:  
unsupported operand type(s) for |: 'sip.wrappertype' and 'NoneType'  
  
File
"/Applications/ChimeraX-1.3.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/core/toolshed/info.py", line 559, in start_tool  
raise ToolshedError(  
  
See log for complete Python traceback.  
  




OpenGL version: 4.1 ATI-1.68.25
OpenGL renderer: AMD Radeon Pro 575 OpenGL Engine
OpenGL vendor: ATI Technologies Inc.Hardware:

    Hardware Overview:

      Model Name: iMac
      Model Identifier: iMac18,3
      Processor Name: Intel Core i5
      Processor Speed: 3.5 GHz
      Number of Processors: 1
      Total Number of Cores: 4
      L2 Cache (per Core): 256 KB
      L3 Cache: 6 MB
      Memory: 16 GB
      Boot ROM Version: 428.0.0.0.0
      SMC Version (system): 2.41f1

Software:

    System Software Overview:

      System Version: macOS 10.13.6 (17G14042)
      Kernel Version: Darwin 17.7.0
      Time since boot: 20 days 14:46

Graphics/Displays:

    Radeon Pro 575:

      Chipset Model: Radeon Pro 575
      Type: GPU
      Bus: PCIe
      PCIe Lane Width: x16
      VRAM (Dynamic, Max): 4096 MB
      Vendor: AMD (0x1002)
      Device ID: 0x67df
      Revision ID: 0x00c4
      ROM Revision: 113-D000AA-931
      VBIOS Version: 113-D0001A1P-025
      EFI Driver Version: 01.00.931
      Metal: Supported, feature set macOS GPUFamily1 v3
      Displays:
        iMac:
          Display Type: Built-In Retina LCD
          Resolution: 5120 x 2880 Retina
          Framebuffer Depth: 30-Bit Color (ARGB2101010)
          Main Display: Yes
          Mirror: Off
          Online: Yes
          Automatically Adjust Brightness: No

Locale: (None, 'UTF-8')
PyQt5 5.15.2, Qt 5.15.2
Installed Packages:
    alabaster: 0.7.12
    appdirs: 1.4.4
    appnope: 0.1.2
    Babel: 2.9.1
    backcall: 0.2.0
    blockdiag: 2.0.1
    certifi: 2021.5.30
    cftime: 1.5.1.1
    charset-normalizer: 2.0.9
    ChimeraX-AddCharge: 1.2.2
    ChimeraX-AddH: 2.1.11
    ChimeraX-AlignmentAlgorithms: 2.0
    ChimeraX-AlignmentHdrs: 3.2
    ChimeraX-AlignmentMatrices: 2.0
    ChimeraX-Alignments: 2.2.3
    ChimeraX-AlphaFold: 1.0
    ChimeraX-AltlocExplorer: 1.0.1
    ChimeraX-AmberInfo: 1.0
    ChimeraX-Arrays: 1.0
    ChimeraX-Atomic: 1.31
    ChimeraX-AtomicLibrary: 4.2
    ChimeraX-AtomSearch: 2.0
    ChimeraX-AtomSearchLibrary: 1.0
    ChimeraX-AxesPlanes: 2.0
    ChimeraX-BasicActions: 1.1
    ChimeraX-BILD: 1.0
    ChimeraX-BlastProtein: 2.0
    ChimeraX-BondRot: 2.0
    ChimeraX-BugReporter: 1.0
    ChimeraX-BuildStructure: 2.6.1
    ChimeraX-Bumps: 1.0
    ChimeraX-BundleBuilder: 1.1
    ChimeraX-ButtonPanel: 1.0
    ChimeraX-CageBuilder: 1.0
    ChimeraX-CellPack: 1.0
    ChimeraX-Centroids: 1.2
    ChimeraX-ChemGroup: 2.0
    ChimeraX-Clashes: 2.2.2
    ChimeraX-clix: 0.2.0
    ChimeraX-ColorActions: 1.0
    ChimeraX-ColorGlobe: 1.0
    ChimeraX-ColorKey: 1.5
    ChimeraX-CommandLine: 1.1.5
    ChimeraX-ConnectStructure: 2.0
    ChimeraX-Contacts: 1.0
    ChimeraX-Core: 1.3
    ChimeraX-CoreFormats: 1.1
    ChimeraX-coulombic: 1.3.2
    ChimeraX-Crosslinks: 1.0
    ChimeraX-Crystal: 1.0
    ChimeraX-CrystalContacts: 1.0
    ChimeraX-DataFormats: 1.2.2
    ChimeraX-Dicom: 1.0
    ChimeraX-DistMonitor: 1.1.5
    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.1
    ChimeraX-Hbonds: 2.1.2
    ChimeraX-Help: 1.2
    ChimeraX-HKCage: 1.3
    ChimeraX-IHM: 1.1
    ChimeraX-ImageFormats: 1.2
    ChimeraX-IMOD: 1.0
    ChimeraX-IO: 1.0.1
    ChimeraX-ItemsInspection: 1.0
    ChimeraX-Label: 1.1
    ChimeraX-ListInfo: 1.1.1
    ChimeraX-Log: 1.1.4
    ChimeraX-LookingGlass: 1.1
    ChimeraX-Maestro: 1.8.1
    ChimeraX-Map: 1.1
    ChimeraX-MapData: 2.0
    ChimeraX-MapEraser: 1.0
    ChimeraX-MapFilter: 2.0
    ChimeraX-MapFit: 2.0
    ChimeraX-MapSeries: 2.1
    ChimeraX-Markers: 1.0
    ChimeraX-Mask: 1.0
    ChimeraX-MatchMaker: 2.0.4
    ChimeraX-MDcrds: 2.6
    ChimeraX-MedicalToolbar: 1.0.1
    ChimeraX-Meeting: 1.0
    ChimeraX-MLP: 1.1
    ChimeraX-mmCIF: 2.4
    ChimeraX-MMTF: 2.1
    ChimeraX-Modeller: 1.2.6
    ChimeraX-ModelPanel: 1.2.1
    ChimeraX-ModelSeries: 1.0
    ChimeraX-Mol2: 2.0
    ChimeraX-Morph: 1.0
    ChimeraX-MouseModes: 1.1
    ChimeraX-Movie: 1.0
    ChimeraX-Neuron: 1.0
    ChimeraX-Nucleotides: 2.0.2
    ChimeraX-OpenCommand: 1.7
    ChimeraX-PDB: 2.6.5
    ChimeraX-PDBBio: 1.0
    ChimeraX-PDBLibrary: 1.0.2
    ChimeraX-PDBMatrices: 1.0
    ChimeraX-PickBlobs: 1.0
    ChimeraX-Positions: 1.0
    ChimeraX-PresetMgr: 1.0.1
    ChimeraX-PubChem: 2.1
    ChimeraX-ReadPbonds: 1.0.1
    ChimeraX-Registration: 1.1
    ChimeraX-RemoteControl: 1.0
    ChimeraX-ResidueFit: 1.0
    ChimeraX-RestServer: 1.1
    ChimeraX-RNALayout: 1.0
    ChimeraX-RotamerLibMgr: 2.0.1
    ChimeraX-RotamerLibsDunbrack: 2.0
    ChimeraX-RotamerLibsDynameomics: 2.0
    ChimeraX-RotamerLibsRichardson: 2.0
    ChimeraX-SaveCommand: 1.5
    ChimeraX-SchemeMgr: 1.0
    ChimeraX-SDF: 2.0
    ChimeraX-Segger: 1.0
    ChimeraX-Segment: 1.0
    ChimeraX-SelInspector: 1.0
    ChimeraX-SeqView: 2.4.6
    ChimeraX-Shape: 1.0.1
    ChimeraX-Shell: 1.0
    ChimeraX-Shortcuts: 1.1
    ChimeraX-ShowAttr: 1.0
    ChimeraX-ShowSequences: 1.0
    ChimeraX-SideView: 1.0
    ChimeraX-Smiles: 2.1
    ChimeraX-SmoothLines: 1.0
    ChimeraX-SpaceNavigator: 1.0
    ChimeraX-StdCommands: 1.6.1
    ChimeraX-STL: 1.0
    ChimeraX-Storm: 1.0
    ChimeraX-Struts: 1.0
    ChimeraX-Surface: 1.0
    ChimeraX-SwapAA: 2.0
    ChimeraX-SwapRes: 2.1
    ChimeraX-TapeMeasure: 1.0
    ChimeraX-Test: 1.0
    ChimeraX-Toolbar: 1.1
    ChimeraX-ToolshedUtils: 1.2
    ChimeraX-Tug: 1.0
    ChimeraX-UI: 1.13.7
    ChimeraX-uniprot: 2.2
    ChimeraX-UnitCell: 1.0
    ChimeraX-ViewDockX: 1.0.1
    ChimeraX-VIPERdb: 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-XMAS: 1.1.2
    ChimeraX-Zone: 1.0
    colorama: 0.4.4
    cxservices: 1.1
    cycler: 0.11.0
    Cython: 0.29.24
    decorator: 5.1.0
    docutils: 0.17.1
    et-xmlfile: 1.1.0
    filelock: 3.0.12
    funcparserlib: 0.3.6
    grako: 3.16.5
    h5py: 3.6.0
    html2text: 2020.1.16
    idna: 3.3
    ihm: 0.21
    imagecodecs: 2021.4.28
    imagesize: 1.3.0
    ipykernel: 5.5.5
    ipython: 7.23.1
    ipython-genutils: 0.2.0
    jedi: 0.18.0
    Jinja2: 3.0.1
    jupyter-client: 6.1.12
    jupyter-core: 4.9.1
    kiwisolver: 1.3.2
    lxml: 4.6.3
    lz4: 3.1.3
    MarkupSafe: 2.0.1
    matplotlib: 3.4.3
    matplotlib-inline: 0.1.3
    msgpack: 1.0.2
    netCDF4: 1.5.7
    networkx: 2.6.3
    numexpr: 2.8.0
    numpy: 1.21.2
    openpyxl: 3.1.2
    openvr: 1.16.801
    packaging: 21.0
    pandas: 2.0.1
    ParmEd: 3.2.0
    parso: 0.8.3
    pexpect: 4.8.0
    pickleshare: 0.7.5
    Pillow: 8.3.2
    pip: 21.2.4
    pkginfo: 1.7.1
    platformdirs: 4.3.7
    prompt-toolkit: 3.0.23
    psutil: 5.8.0
    ptyprocess: 0.7.0
    pycollada: 0.7.1
    pydicom: 2.1.2
    Pygments: 2.10.0
    PyOpenGL: 3.1.5
    PyOpenGL-accelerate: 3.1.5
    pyparsing: 3.0.6
    PyQt5-commercial: 5.15.2
    PyQt5-sip: 12.8.1
    PyQtWebEngine-commercial: 5.15.2
    python-dateutil: 2.8.2
    pytz: 2021.3
    pyzmq: 22.3.0
    qtconsole: 5.1.1
    QtPy: 1.11.3
    QtRangeSlider: 0.1.5
    RandomWords: 0.3.0
    requests: 2.26.0
    scipy: 1.7.1
    seaborn: 0.12.2
    setuptools: 57.5.0
    sfftk-rw: 0.7.1
    six: 1.16.0
    snowballstemmer: 2.2.0
    sortedcontainers: 2.4.0
    Sphinx: 4.2.0
    sphinx-autodoc-typehints: 1.12.0
    sphinxcontrib-applehelp: 1.0.2
    sphinxcontrib-blockdiag: 2.0.0
    sphinxcontrib-devhelp: 1.0.2
    sphinxcontrib-htmlhelp: 2.0.0
    sphinxcontrib-jsmath: 1.0.1
    sphinxcontrib-qthelp: 1.0.3
    sphinxcontrib-serializinghtml: 1.1.5
    suds-jurko: 0.6
    tifffile: 2021.4.8
    tinyarray: 1.2.3
    tornado: 6.1
    traitlets: 5.1.1
    tzdata: 2023.3
    urllib3: 1.26.7
    wcwidth: 0.2.5
    webcolors: 1.11.1
    wheel: 0.37.0
    wheel-filename: 1.3.0

Change History (2)

comment:1 by Eric Pettersen, 8 months ago

Component: UnassignedThird Party
Owner: set to CliX
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionCliX: operand type(s) for |: 'type' and 'NoneType'

It seems that the type annotations that CliX uses don't work in the older versions of Python that are used by older versions of ChimeraX (ChimeraX 1.3 here, 1.5 in #15970).

Srinivasan, you need to upgrade to a newer ChimeraX in order to use CliX.

Hanjin, you need to increase the version of ChimeraX-Core in your bundle requirements to at least 1.7.

comment:2 by Eric Pettersen, 8 months ago

Owner: changed from CliX to Hanjin Liu
Note: See TracTickets for help on using tickets.