Opened 5 years ago
Closed 5 years ago
#3975 closed defect (fixed)
Show sequence AttributeError: 'set' object has no attribute '_c_pointer'
| Reported by: | Owned by: | Tom Goddard | |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | Sequence | Version: | |
| Keywords: | Cc: | Eric Pettersen | |
| Blocked By: | Blocking: | ||
| Notify when closed: | Platform: | all | |
| Project: | ChimeraX |
Description
The following bug report has been submitted:
Platform: macOS-10.15.7-x86_64-i386-64bit
ChimeraX Version: 1.2.dev202011130655 (2020-11-13 06:55:07 UTC)
Description
Pressed the Sequence button on the Molecule Display toolbar, pdb 6ugw.
Log:
UCSF ChimeraX version: 1.2.dev202011130655 (2020-11-13)
© 2016-2020 Regents of the University of California. All rights reserved.
> open /Users/goddard/Downloads/test.cxs format session
Log from Tue Nov 24 16:16:06 2020UCSF ChimeraX version: 1.2.dev202011130655
(2020-11-13)
© 2016-2020 Regents of the University of California. All rights reserved.
How to cite UCSF ChimeraX
> open 2gbp format mmcif fromDatabase pdb
2gbp title:
Sugar and signal-transducer binding sites of the escherichia coli galactose
chemoreceptor protein [more info...]
Chain information for 2gbp #1
---
Chain | Description
A | D-galactose/D-glucose binding protein
Non-standard residues in 2gbp #1
---
BGC — β-D-glucose
CA — calcium ion
> close
> open /Users/goddard/Downloads/6ugw.pdb
6ugw.pdb title:
Crystal structure of the FC fragment of PF06438179/GP1111 an infliximab
biosimilar In A C-centered orthorhombic crystal form, lot A [more info...]
Chain information for 6ugw.pdb #1
---
Chain | Description
A | PF-06438179/GP1111 FC
Non-standard residues in 6ugw.pdb #1
---
ACT — acetate ion
BMA — β-D-mannose
FUC — α-L-fucose
GAL — β-D-galactose
MAN — α-D-mannose
NAG — N-acetyl-D-glucosamine
ZN — zinc ion
> save /Users/goddard/Downloads/test.cxs
——— End of log from Tue Nov 24 16:16:06 2020 ———
opened ChimeraX session
> save /Users/goddard/Desktop/image1.png supersample 3
> movie record
> turn y 2 180
> wait 180
> movie encode /Users/goddard/Desktop/movie1.mp4
Movie saved to /Users/goddard/Desktop/movie1.mp4
> show atoms
> hide atoms
> hide cartoons
> show cartoons
> show surfaces
> hide surfaces
> show atoms
> style sphere
Changed 1862 atom styles
> style stick
Changed 1862 atom styles
> style ball
Changed 1862 atom styles
> set bgColor white
> set bgColor black
> lighting soft
> lighting simple
> lighting full
> set bgColor white
> graphics silhouettes true
> hide atoms
> show atoms
> hide cartoons
> show cartoons
> show surfaces
> hide surfaces
> style stick
Changed 1862 atom styles
> style sphere
Changed 1862 atom styles
> style ball
Changed 1862 atom styles
> nucleotides atoms
> style nucleic stick
Changed 0 atom styles
> nucleotides fill
> style nucleic stick
Changed 0 atom styles
> nucleotides fill
> style nucleic stick
Changed 0 atom styles
> nucleotides ladder
> nucleotides ladder
> nucleotides ladder
> nucleotides atoms
> style nucleic stick
Changed 0 atom styles
> color bychain
> color byhetero
> rainbow
> coulombic
The following heavy (non-hydrogen) atoms are missing, which may result in
inaccurate electrostatics: /A ASN 364 OD1, /A ASN 364 ND2, /A ASN 364 CG, /A
LYS 249 CE, /A LYS 249 NZ, and 46 other atoms
Coulombic values for 6ugw.pdb_A SES surface #1.2: minimum, -13.36, mean -2.38,
maximum 9.64
> mlp
Map values for surface "6ugw.pdb_A SES surface": minimum -26.84, mean -5.114,
maximum 23.51
> color bfactor
1862 atoms, 371 residues, 1 surfaces, atom bfactor range 13.4 to 104
> color bynucleotide
> hide surfaces
> hbonds
555 hydrogen bonds found
> ~hbonds
Alignment identifier is 1/A
Traceback (most recent call last):
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/toolbar/tool.py", line 202, in callback
bundle_info.run_provider(session, name, session.toolbar,
display_name=display_name)
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/core/toolshed/info.py", line 361, in run_provider
return api._api_caller.run_provider(api, session, name, mgr, **kw)
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/core/toolshed/__init__.py", line 1270, in run_provider
return cls._get_func(api, "run_provider")(session, name, mgr, **kw)
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/shortcuts/__init__.py", line 52, in run_provider
shortcuts.run_provider(session, name)
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/shortcuts/shortcuts.py", line 1221, in run_provider
keyboard_shortcuts(session).try_shortcut(name)
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/shortcuts/shortcuts.py", line 376, in try_shortcut
self.run_shortcut(keys)
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/shortcuts/shortcuts.py", line 394, in run_shortcut
sc.run(self.session, status = self._enabled)
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/shortcuts/shortcuts.py", line 296, in run
f(shortcut_atoms(s))
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/shortcuts/shortcuts.py", line 933, in show_sequence
run(session, 'sequence chain %s' % seq_chain_spec, log = False)
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/shortcuts/shortcuts.py", line 480, in run
run_command(session, command, **kw)
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/core/commands/run.py", line 36, in run
results = command.run(text, log=log, return_json=return_json)
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/core/commands/cli.py", line 2835, in run
result = ci.function(session, **kw_args)
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/seqalign/cmd.py", line 140, in seqalign_chain
alignment = session.alignments.new_alignment([chain], ident, seq_viewer="sv",
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/seqalign/manager.py", line 232, in new_alignment
alignment = Alignment(self.session, seqs, identify_as, attrs, markups,
auto_destroy,
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/seqalign/alignment.py", line 128, in __init__
self._set_residue_attributes()
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/seqalign/alignment.py", line 721, in _set_residue_attributes
self.session.change_tracker.add_modified(assigned, attr_name + " changed")
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/atomic/molobject.py", line 1914, in add_modified
f(self._c_pointer, self._inst_to_int(item), modded._c_pointer,
AttributeError: 'set' object has no attribute '_c_pointer'
AttributeError: 'set' object has no attribute '_c_pointer'
File "/Users/goddard/ucsf/chimerax-
pyside/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-
packages/chimerax/atomic/molobject.py", line 1914, in add_modified
f(self._c_pointer, self._inst_to_int(item), modded._c_pointer,
See log for complete Python traceback.
OpenGL version: 4.1 ATI-3.10.18
OpenGL renderer: AMD Radeon Pro Vega 20 OpenGL Engine
OpenGL vendor: ATI Technologies Inc.Hardware:
Hardware Overview:
Model Name: MacBook Pro
Model Identifier: MacBookPro15,3
Processor Name: 8-Core Intel Core i9
Processor Speed: 2.4 GHz
Number of Processors: 1
Total Number of Cores: 8
L2 Cache (per Core): 256 KB
L3 Cache: 16 MB
Hyper-Threading Technology: Enabled
Memory: 32 GB
Boot ROM Version: 1037.147.4.0.0 (iBridge: 17.16.16610.0.0,0)
Software:
System Software Overview:
System Version: macOS 10.15.7 (19H2)
Kernel Version: Darwin 19.6.0
Time since boot: 12 days 27 minutes
Graphics/Displays:
Intel UHD Graphics 630:
Chipset Model: Intel UHD Graphics 630
Type: GPU
Bus: Built-In
VRAM (Dynamic, Max): 1536 MB
Vendor: Intel
Device ID: 0x3e9b
Revision ID: 0x0002
Automatic Graphics Switching: Supported
gMux Version: 5.0.0
Metal: Supported, feature set macOS GPUFamily2 v1
Radeon Pro Vega 20:
Chipset Model: Radeon Pro Vega 20
Type: GPU
Bus: PCIe
PCIe Lane Width: x8
VRAM (Total): 4 GB
Vendor: AMD (0x1002)
Device ID: 0x69af
Revision ID: 0x00c0
ROM Revision: 113-D2060I-087
VBIOS Version: 113-D20601MA0T-016
Option ROM Version: 113-D20601MA0T-016
EFI Driver Version: 01.01.087
Automatic Graphics Switching: Supported
gMux Version: 5.0.0
Metal: Supported, feature set macOS GPUFamily2 v1
Displays:
Color LCD:
Display Type: Built-In Retina LCD
Resolution: 2880 x 1800 Retina
Framebuffer Depth: 24-Bit Color (ARGB8888)
Main Display: Yes
Mirror: Off
Online: Yes
Automatically Adjust Brightness: No
Connection Type: Internal
Locale: ('en_US', 'UTF-8')
PyQt version: 5.15.1
Compiled Qt version: 5.15.1
Installed Packages:
alabaster: 0.7.12
appdirs: 1.4.4
appnope: 0.1.0
Babel: 2.9.0
backcall: 0.2.0
blockdiag: 2.0.1
certifi: 2020.11.8
cftime: 1.2.1
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.9.3
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.0
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.dev202011130655
ChimeraX-CoreFormats: 1.0
ChimeraX-coulombic: 1.0.1
ChimeraX-Crosslinks: 1.0
ChimeraX-Crystal: 1.0
ChimeraX-DataFormats: 1.0.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.1
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.1
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.3.1
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.2.1
ChimeraX-SchemeMgr: 1.0
ChimeraX-SDF: 2.0
ChimeraX-Segger: 1.0
ChimeraX-Segment: 1.0
ChimeraX-SeqView: 2.2.1
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.0
ChimeraX-Tug: 1.0
ChimeraX-UI: 1.3.1
ChimeraX-uniprot: 2.0
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
imagecodecs-lite: 2020.1.31
imagesize: 1.2.0
ipykernel: 5.3.4
ipython: 7.18.1
ipython-genutils: 0.2.0
jedi: 0.17.2
Jinja2: 2.11.2
jupyter-client: 6.1.7
jupyter-core: 4.6.3
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
netifaces: 0.10.9
networkx: 2.5
numexpr: 2.7.1
numpy: 1.19.2
numpydoc: 1.1.0
openvr: 1.14.1501
packaging: 20.4
parso: 0.7.1
pexpect: 4.8.0
pickleshare: 0.7.5
Pillow: 7.2.0
pip: 20.2.3
pkginfo: 1.5.0.1
prompt-toolkit: 3.0.8
psutil: 5.7.2
ptyprocess: 0.6.0
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.1
python-dateutil: 2.8.1
pytz: 2020.4
pyzmq: 19.0.2
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.0
sfftk-rw: 0.6.7.dev1
shiboken2: 5.15.1
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.35.1
Change History (11)
comment:2 by , 5 years ago
| Platform: | → all |
|---|---|
| Project: | → ChimeraX |
Reinstalled alignments bundle, still get same error, just open 6ugw, press Sequence toolbar button. Also same error with Tools / Sequence / Show Sequence Viewer / Show.
comment:3 by , 5 years ago
Printing shows modded in line 1912 in ChangeTracker class add_modified() is indeed a set of residues so modded._c_pointer gives this error.
comment:4 by , 5 years ago
| Component: | Unassigned → Sequence |
|---|---|
| Owner: | set to |
| Status: | new → assigned |
| Summary: | ChimeraX bug report submission → Show sequence AttributeError: 'set' object has no attribute '_c_pointer' |
Indeed _set_residue_attributes() in alignment.py does called change_tracker.add_modified() with a set which is not handled correctly. Still have not seen why this does not happen in devel build. Maybe the bug was fixed on the develop branch but not the pyside branch.
comment:5 by , 5 years ago
This was broken in the develop branch for a day or two, and has been fixed for at least a week. Does the pyside2 branch not track develop? To track develop:
git branch --set-upstream-to=origin/develop pyside2
follow-up: 6 comment:6 by , 5 years ago
I am ignorant about git branches. I don't know what track develop means. Does that mean all commits to develop are made to pyside2? I thought I made the brach off of develop and no subsequent develop changes would get merged in until I merged it back into develop unless I rebased the branch.
comment:7 by , 5 years ago
| Cc: | added |
|---|---|
| Owner: | changed from to |
Okay, well, I've never worked with a branch on the _remote_ repository, so forget that command I sent. My workflow for branches I work on is:
I create the branch on essex. There is no corresponding remote branch. I set the "upstream" branch for my new branch to be develop. That means that I can pull changes from develop into my branch to get bug fixes and updates. Eventually, when the feature I'm working on is ready, I can push and it goes into develop.
I don't know how to get a remote branch to incorporate changes from another remote branch. I'm sure there's a way. This web page provides some explanation: https://www.atlassian.com/git/tutorials/merging-vs-rebasing
comment:8 by , 5 years ago
This StackOverflow question seems on point: https://stackoverflow.com/questions/23336221/how-to-merge-one-remote-branch-into-another-remote-branch
follow-up: 9 comment:9 by , 5 years ago
Phew! Ok. That starts to make some sense now. Yes, the pyside2 branch is a remote branch since I wanted you and the others to be able to contribute to it. I am fine with it not keeping up to date with develop. The idea is that it is short lived and gets merged back into develop. Of course this ticket shows the flaw in that "not up to date" strategy, but I think it is rarely an issue.
follow-up: 10 comment:10 by , 5 years ago
Yeah, it looks as simple as just doing "git merge develop" while pyside2 is my current branch and then git push. I'll skip the steps in the StackOverflow post that tell me to delete the develop branch after that! I guess they are envisioning merging a new feature branch into the develop while I would be going in the opposite direction.
comment:11 by , 5 years ago
| Resolution: | → fixed |
|---|---|
| Status: | assigned → closed |
Fixed on develop branch by Eric a week ago. I could merge it into the pyside2 branch but I am not going to bother. I'll wait to deal with merge conflicts when I merge pyside2 back into develop.