diff --git a/mayavi/preferences/preference_manager.py b/mayavi/preferences/preference_manager.py index efe68ef9e..c331646b8 100644 --- a/mayavi/preferences/preference_manager.py +++ b/mayavi/preferences/preference_manager.py @@ -21,7 +21,7 @@ # Standard library imports from os.path import join -import pkg_resources +from importlib.resources import files # Enthought library imports. from traits.etsconfig.api import ETSConfig @@ -106,12 +106,11 @@ def _load_preferences(self): for pkg in ('mayavi.preferences', 'tvtk.plugins.scene'): pref = 'preferences.ini' - pref_file = pkg_resources.resource_stream(pkg, pref) - - preferences = self.preferences - default = preferences.node('default/') - default.load(pref_file) - pref_file.close() + pref_file = files(pkg).joinpath(pref) + with pref_file.open('rb') as fp: + preferences = self.preferences + default = preferences.node('default/') + default.load(fp) finally: # Set back the application home. ETSConfig.application_home = app_home diff --git a/mayavi/tests/test_preferences_mirror.py b/mayavi/tests/test_preferences_mirror.py index 1027d43ea..71b86797e 100644 --- a/mayavi/tests/test_preferences_mirror.py +++ b/mayavi/tests/test_preferences_mirror.py @@ -3,7 +3,7 @@ # License: BSD Style. import unittest -from pkg_resources import resource_filename +from importlib.resources import files, as_file from traits.api import Str, Int, Bool from apptools.preferences.api import set_default_preferences @@ -25,9 +25,8 @@ def setUp(self): """Called before each test is run""" self.preferences = set_default_preferences(Preferences()) # The filename of the example preferences file. - pref_file = resource_filename('mayavi.tests', - 'test_preference.ini') - self.preferences.load(pref_file) + with as_file(files('mayavi.tests')/'test_preference.ini') as pref_file: + self.preferences.load(str(pref_file)) self.pref = _TestPreference() self.mirror = PreferencesMirror() self.mirror.preferences = self.pref