From: Michael R. Crusoe <crusoe@debian.org>
Subject: pkg_resources is deprecated in favor of importlib.resources
Forwarded: https://github.com/enthought/mayavi/pull/1322

--- mayavi2.orig/mayavi/preferences/preference_manager.py
+++ mayavi2/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 @@
             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
--- mayavi2.orig/mayavi/tests/test_preferences_mirror.py
+++ mayavi2/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 @@
         """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
