diff options
| -rw-r--r-- | Lib/importlib/_common.py | 3 | ||||
| -rw-r--r-- | Lib/importlib/readers.py | 1 | ||||
| -rw-r--r-- | Lib/test/test_importlib/test_reader.py | 6 | ||||
| -rw-r--r-- | Misc/NEWS.d/next/Library/2021-05-21-12-12-35.bpo-43643.GWnmcF.rst | 1 |
4 files changed, 10 insertions, 1 deletions
diff --git a/Lib/importlib/_common.py b/Lib/importlib/_common.py index 03383048ad..ed509971ce 100644 --- a/Lib/importlib/_common.py +++ b/Lib/importlib/_common.py @@ -7,7 +7,7 @@ import types import importlib from typing import Union, Any, Optional -from .abc import ResourceReader +from .abc import ResourceReader, Traversable from ._adapters import wrap_spec @@ -15,6 +15,7 @@ Package = Union[types.ModuleType, str] def files(package): + # type: (Package) -> Traversable """ Get a Traversable resource from a package """ diff --git a/Lib/importlib/readers.py b/Lib/importlib/readers.py index 535c8283e9..3e91c1cae6 100644 --- a/Lib/importlib/readers.py +++ b/Lib/importlib/readers.py @@ -96,6 +96,7 @@ class MultiplexedPath(abc.Traversable): def open(self, *args, **kwargs): raise FileNotFoundError('{} is not a file'.format(self)) + @property def name(self): return self._paths[0].name diff --git a/Lib/test/test_importlib/test_reader.py b/Lib/test/test_importlib/test_reader.py index b0bf49b8ba..ed1f6be717 100644 --- a/Lib/test/test_importlib/test_reader.py +++ b/Lib/test/test_importlib/test_reader.py @@ -82,6 +82,12 @@ class MultiplexedPathTest(unittest.TestCase): "MultiplexedPath('{}')".format(self.folder), ) + def test_name(self): + self.assertEqual( + MultiplexedPath(self.folder).name, + os.path.basename(self.folder), + ) + class NamespaceReaderTest(unittest.TestCase): site_dir = str(pathlib.Path(__file__).parent) diff --git a/Misc/NEWS.d/next/Library/2021-05-21-12-12-35.bpo-43643.GWnmcF.rst b/Misc/NEWS.d/next/Library/2021-05-21-12-12-35.bpo-43643.GWnmcF.rst new file mode 100644 index 0000000000..57157dfe21 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2021-05-21-12-12-35.bpo-43643.GWnmcF.rst @@ -0,0 +1 @@ +Declare readers.MultiplexedPath.name as a property per the spec. |
