The exception packaging in MDSplus has been refactored again so the code to import TreeException will need to be altered slightly. I would recommend the following import attempts used in several of the modules:
...
try:
import MDSplus
try:
from MDSplus.mdsExceptions import _TreeException as TreeException
except:
try:
from MDSplus.mdsExceptions.treeshrExceptions import TreeException
except:
from MDSplus._treeshr import TreeException
_has_MDS = True
except Exception as _e_MDS:
...
The exception packaging in MDSplus has been refactored again so the code to import TreeException will need to be altered slightly. I would recommend the following import attempts used in several of the modules: