diff mercurial/utils/resourceutil.py @ 47836:f3b1df44b716 stable

template: handle missing resource in `_readmapfile` This fix the remaining issue in test-template-map.t. Differential Revision: https://phab.mercurial-scm.org/D11288
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Wed, 18 Aug 2021 01:41:02 +0200
parents d4ba4d51f85f
children df94c13ddf60
line wrap: on
line diff
--- a/mercurial/utils/resourceutil.py	Wed Aug 18 01:10:40 2021 +0200
+++ b/mercurial/utils/resourceutil.py	Wed Aug 18 01:41:02 2021 +0200
@@ -64,6 +64,11 @@
     # Force loading of the resources module
     resources.open_binary  # pytype: disable=module-attr
 
+    # pytype: disable=import-error
+    from importlib.resources import FileNotFoundError
+
+    # pytype: enable=import-error
+
     def open_resource(package, name):
         return resources.open_binary(  # pytype: disable=module-attr
             pycompat.sysstr(package), pycompat.sysstr(name)
@@ -85,6 +90,9 @@
     # importlib.resources was not found (almost definitely because we're on a
     # Python version before 3.7)
 
+    class FileNotFoundError(RuntimeError):
+        pass
+
     def open_resource(package, name):
         path = os.path.join(_package_path(package), name)
         return open(path, "rb")