Opened 6 years ago

Closed 6 years ago

#2510 closed defect (fixed)

Toolshed startup code not guarding against 'cache_dir' being None

Reported by: Alex.Brown@… Owned by: Conrad Huang
Priority: major Milestone:
Component: Tool Shed Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

Hello and good morning,

I have always had a great experience using Chimera and so I was hoping to try out ChimeraX for some of our larger cryo-em data sets. However, following download and an install that did not seem to produce an error message, I can not seem to initialize the program. I have copied the output from the command prompt below. Beyond that, I should probably also mention that we are running the centos-release-7-6.1810.2.el7.centos.x86_64 operating system with intel chips and nvidia graphics cards.

[root@gaolab ~]# chimerax-daily
NOTE: available bundle cache has not been initialized yet
WARNING: could not retrieve bundle list from toolshed
NOTE: Traceback (most recent call last):

File "/opt/UCSF/ChimeraX-daily/lib/python3.7/runpy.py", line 193, in

_run_module_as_main

"main", mod_spec)

File "/opt/UCSF/ChimeraX-daily/lib/python3.7/runpy.py", line 85, in

_run_code

exec(code, run_globals)

File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site-

packages/ChimeraX_main.py", line 871, in <module>

exit_code = init(sys.argv)

File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site-

packages/ChimeraX_main.py", line 580, in init

check_available=opts.get_available_bundles)

File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site-

packages/chimerax/core/toolshed/init.py", line 1681, in init

_toolshed = Toolshed(*args, kw)

File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site-

packages/chimerax/core/toolshed/init.py", line 359, in init

if not available.has_cache_file(self._cache_dir):

File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site-

packages/chimerax/core/toolshed/available.py", line 109, in has_cache_file

return os.path.exists(os.path.join(cache_dir, _CACHE_FILE))

File "/usr/bin/../../opt/UCSF/ChimeraX-daily/lib/python3.7/posixpath.py",

line 80, in join

a = os.fspath(a)

TypeError: expected str, bytes or os.PathLike object, not NoneType

BUG: TypeError: expected str, bytes or os.PathLike object, not NoneType

File "/usr/bin/../../opt/UCSF/ChimeraX-daily/lib/python3.7/posixpath.py", line
80, in join
a = os.fspath(a)

_See log for complete Python traceback._

Thanks in advance for any support you may be able to provide on this!
-Alex

Alexander Brown IV, PhD
Postdoctoral Researcher
Horae Gene Therapy Center
Li Weibo Institute for Rare Diseases Research
University of Massachusetts Medical School
368 Plantation Street, AS6-2011
Worcester, MA 01605
Phone: (508) 856-3316
Email: alex.brown@…

Change History (1)

comment:1 by Conrad Huang, 6 years ago

Resolution: fixed
Status: assignedclosed

Fixed in 36553cd0e.

Check whether the cache directory is None before trying to use os.path.join().

Note: See TracTickets for help on using tickets.