Opened 6 years ago

Closed 6 years ago

Last modified 6 years ago

#2575 closed defect (fixed)

incorrect error message from "open" command

Reported by: Elaine Meng Owned by: Tristan Croll
Priority: moderate Milestone:
Component: Input/Output Version:
Keywords: Cc: Greg Couch
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

I was testing whether the structurefactors option from Clipper works with the other wwPDB sites or only RCSB PDB (answer is only RCSB), and got these dueling error messages in the Log:

open 6cmn fromDatabase pdbe_updated structureFactors true

Unrecognised database name! Must be one of the following: rcsb, pdbe, pdbj

open 6cmn fromDatabase rcsb structuref t

Invalid "fromDatabase" argument: Should be one of 'cellpack', 'eds', 'edsdiff', 'emdb', 'ftp', 'http', 'https', 'pdb', 'pdbdev', 'pdbe', 'pdbe_updated', 'pdbj', or 'uniprot'

Clearly the first error message is wrong. Second error message matches documentation and the given options work as long as there is no attempt to use "structurefactors true" (which only works with RCSB PDB, i.e. 'pdb').

I didn't know whom to assign this to or the component, so please change as needed.

Change History (13)

comment:1 by pett, 6 years ago

Cc: Greg Couch added
Owner: changed from pett to Tom Goddard

comment:2 by Greg Couch, 6 years ago

Owner: changed from Tom Goddard to Tristan Croll

All clipper bugs go through Tristan

comment:3 by Tristan Croll, 6 years ago

I'm a little confused as to why "fromDatabase rcsb" is blocked - I have that implemented (alongside pdbe and pdbj) in Clipper's fetch code, and it's actually what the code defaults to. I did just notice I had a bug in the pdbe and pdbj options - for some reason they set the file extensions as ".ent" rather than ".cif" and my code wasn't recognising that. I've just fixed it so the local structure factor file will have the .cif extension, and now:

open 6cmn fromDatabase pdbe structuref t

and

open 6cmn fromDatabase pdbj structuref t

... work, but "rcsb" raises the invalid argument error.

I'll add the pdbe_updated entry - that didn't exist at the time I wrote this code.

comment:4 by Tristan Croll, 6 years ago

OK, other than fromDatabase rcsb being blocked at a higher level, fetching structure factors now works correctly for all four databases (for these purposes pdbe_updated is just a synonym of pdbe - only the coordinates are changed, not the data).

Also, I changed the UserError raised in Clipper's code when the database isn't recognised, to disambiguate it from the official ChimeraX one. Now it will read:

Fetching structure factors is not implemented for "fromDatabase xxxx"! Must be one of the following: 'rcsb', 'pdbe', 'pdbe_updated', 'pdbj'

in reply to:  5 ; comment:5 by Elaine Meng, 6 years ago

As I understand it, "fromDatabase pdb” (not fromDatabase rcsb) means RCSB… that’s how it is documented.  Why not just use that one??

Also I tried using “structureFactors true" with pdbe, pdbj, pdbe_updated and got error messages for a structure that does have structure factors (6cmn).  That is why I assumed it only works with  database “pdb”.  Are those different bugs?  I can make a ticket if you want.

in reply to:  6 ; comment:6 by Tristan Croll, 6 years ago

The error messages you got for the other databases were due to them 
downloading with different file extensions than Clipper was expecting 
(same format internally - just for some reason pdbe and pdbj like to set 
the file extensions for PDB and structure-factor CIF files as ".ent"). 
That will be fixed for the next release.

As far as I'm aware "fromDatabase pdb" is automatically converted to 
"rcsb" before the fetching code actually sees it - the possible sources 
listed in mmcif.py are "rcsb", "pdbe", "pdbe_updated", "pdbj" while 
those in pdb.py are "rcsb" and "pdbe". I've implemented fetches for the 
same four options that mmcif.py provides - I have no idea why the "rcsb" 
option is being blocked, but it's not my doing.

On 2019-11-15 16:35, ChimeraX wrote:

in reply to:  7 ; comment:7 by Elaine Meng, 6 years ago

Since the “rcsb” option is not otherwise visible to the user, it would be better if the error message didn’t mention it.

in reply to:  8 ; comment:8 by Tristan Croll, 6 years ago

Ah! Now I understand - I hadn't realised that "rcsb" simply isn't ever a 
valid argument. OK - easy enough fix.

On 2019-11-15 16:49, ChimeraX wrote:

comment:9 by Tristan Croll, 6 years ago

Resolution: fixed
Status: assignedclosed

I think this is all working now.

in reply to:  10 ; comment:10 by Elaine Meng, 6 years ago

? I still get the same wrong error message as in my initial bugreport.  Tested in UCSF ChimeraX version: 0.91 (2019-12-20).  Has the fix been committed?

open 6cmn fromDatabase pdbe_updated structureFactors true

…gives: Unrecognised database name! Must be one of the following: rcsb, pdbe, pdbj

The error message should contain “pdb” not “rcsb”.  

in reply to:  11 ; comment:11 by Elaine Meng, 6 years ago

…and “pdbe_updated” is a valid source as well.  The allowed fetch sources are documented here:
<http://rbvi.ucsf.edu/chimerax/docs/user/commands/open.html#fetch>

in reply to:  12 ; comment:12 by Tristan Croll, 6 years ago

Do you have the latest Clipper build installed? There’s a Mac build on the preview ToolShed you could try.
 

 


in reply to:  13 ; comment:13 by Elaine Meng, 6 years ago

My bad, that is undoubtedly the problem.  I’m perpetually confused about having to go to the Toolshed to update stuff even though I have the latest daily build.  However, the Toolshed has a problem right now that prevents installing the update, probably related to our website problems over the weekend.

Note: See TracTickets for help on using tickets.