﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	blockedby	blocking	notify_on_close	platform	project
2638	Make session save prune unsavable objects	goddard@…	Greg Couch	"{{{
The following bug report has been submitted:
Platform:        Darwin-19.0.0-x86_64-i386-64bit
ChimeraX Version: 0.91 (2019-12-02)
Description
Make session save prune unsavable objects.

To make session save robust it would be good if the saved tree can be pruned to eliminate Model and ToolInstance objects that cannot be saved possibly because they reference some other unsavable object.

One scenario where this problem arises is if a Model subclass sets m.SESSION_SAVE = False and some tool that does save in sessions tries to save a reference to that Model.  Examples of models that don't save in session are VR hand controllers and VR user interface panels.  But many tools might not offer session save support for their models.  If some unrelated tool tries to save a reference to such a model I think the session save fails which is a very bad result.

One possible solution is to prune the session save graph.  If some object cannot be saved, then traverse up the directed graph until some object is reached that has declared it can handle unsavable children, such as the Models manager, or ToolInstance manager.


Log:
UCSF ChimeraX version: 0.91 (2019-12-02)  
© 2016-2019 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  




OpenGL version: 4.1 ATI-3.2.24
OpenGL renderer: AMD Radeon Pro 580 OpenGL Engine
OpenGL vendor: ATI Technologies Inc.

}}}
"	enhancement	assigned	normal		Sessions				Conrad Huang Eric Pettersen				all	ChimeraX
