Opened 7 years ago
Closed 7 years ago
#1445 closed defect (fixed)
"Usage" needs to be more bulletproof
| Reported by: | Conrad Huang | Owned by: | Greg Couch |
|---|---|---|---|
| Priority: | normal | Milestone: | 0.9 |
| Component: | Command Line | 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.17134
ChimeraX Version: 0.8 (2018-11-11)
Description
Typed "usage" and got traceback. The offending command should be fixed, but "usage" should still give information about the working commands.
Log:
UCSF ChimeraX version: 0.8 (2018-11-11)
How to cite UCSF ChimeraX
> open 2gbp
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
> usage
Use 'usage <command>' for a command synopsis.
Use 'help <command>' to learn more about a command.
Traceback (most recent call last):
File "E:\chimerax\ChimeraX.app\bin\lib\site-
packages\chimerax\core\toolshed\info.py", line 272, in _register_cmd
api._api_caller.register_command(api, self, ci, logger)
File "E:\chimerax\ChimeraX.app\bin\lib\site-
packages\chimerax\core\toolshed\\__init__.py", line 1189, in register_command
return cls._get_func(api, "register_command")(ci.name, logger)
File "E:\chimerax\ChimeraX.app\bin\lib\site-
packages\chimerax\cage_builder\\__init__.py", line 28, in register_command
cmd.register_cage_command(logger)
File "E:\chimerax\ChimeraX.app\bin\lib\site-
packages\chimerax\cage_builder\cmd.py", line 84, in register_cage_command
required_arguments = [place_model],
NameError: name 'place_model' is not defined
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "E:\chimerax\ChimeraX.app\bin\lib\site-
packages\chimerax\core\commands\cli.py", line 1886, in lazy_register
deferred.call()
File "E:\chimerax\ChimeraX.app\bin\lib\site-
packages\chimerax\core\commands\cli.py", line 1816, in call
return self.proxy()
File "E:\chimerax\ChimeraX.app\bin\lib\site-
packages\chimerax\core\toolshed\info.py", line 265, in cb
s._register_cmd(ci, l)
File "E:\chimerax\ChimeraX.app\bin\lib\site-
packages\chimerax\core\toolshed\info.py", line 275, in _register_cmd
"register_command() failed for command %s in bundle %s:\n%s" % (ci.name,
self.name, str(e)))
chimerax.core.toolshed.ToolshedError: register_command() failed for command
cage in bundle ChimeraX-Cage-Builder:
name 'place_model' is not defined
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "E:\chimerax\ChimeraX.app\bin\lib\site-
packages\chimerax\cmd_line\tool.py", line 220, in execute
cmd.run(cmd_text)
File "E:\chimerax\ChimeraX.app\bin\lib\site-
packages\chimerax\core\commands\cli.py", line 2581, in run
result = ci.function(session, **kw_args)
File "E:\chimerax\ChimeraX.app\bin\lib\site-
packages\chimerax\std_commands\usage.py", line 31, in usage
cmds = cli.registered_commands(multiword=True)
File "E:\chimerax\ChimeraX.app\bin\lib\site-
packages\chimerax\core\commands\cli.py", line 2997, in registered_commands
return list(cmds('', parent_info))
File "E:\chimerax\ChimeraX.app\bin\lib\site-
packages\chimerax\core\commands\cli.py", line 2980, in cmds
word_info.lazy_register(word)
File "E:\chimerax\ChimeraX.app\bin\lib\site-
packages\chimerax\core\commands\cli.py", line 1888, in lazy_register
raise RuntimeError("delayed command registration for %r failed (%s)" %
(cmd_name, e))
RuntimeError: delayed command registration for 'cage' failed
(register_command() failed for command cage in bundle ChimeraX-Cage-Builder:
name 'place_model' is not defined)
RuntimeError: delayed command registration for 'cage' failed
(register_command() failed for command cage in bundle ChimeraX-Cage-Builder:
name 'place_model' is not defined)
File "E:\chimerax\ChimeraX.app\bin\lib\site-
packages\chimerax\core\commands\cli.py", line 1888, in lazy_register
raise RuntimeError("delayed command registration for %r failed (%s)" %
(cmd_name, e))
See log for complete Python traceback.
OpenGL version: 3.3.13521 Core Profile Forward-Compatible Context 24.20.11001.5003
OpenGL renderer: Radeon (TM) RX 480 Graphics
OpenGL vendor: ATI Technologies Inc.
Change History (4)
comment:1 by , 7 years ago
| Cc: | added |
|---|---|
| Component: | Unassigned → Command Line |
| Owner: | set to |
| Platform: | → all |
| Project: | → ChimeraX |
| Status: | new → assigned |
| Summary: | ChimeraX bug report submission → "Usage" needs to be more bulletproof |
comment:3 by , 7 years ago
| Milestone: | → 0.9 |
|---|
comment:4 by , 7 years ago
| Resolution: | → fixed |
|---|---|
| Status: | assigned → closed |
usage and usage all skip commands that can't be registered. If you directly try to use an unregisterible command, then an exception is shown.
Note:
See TracTickets
for help on using tickets.
Cc'ed Tom Goddard since the actual traceback is from the "cage" command code.