Skip to content

Commit 64ae8f6

Browse files
committed
Merge branch 'main' into bugfix/442-excess-entries
2 parents 4c02b18 + 4df89f1 commit 64ae8f6

File tree

3 files changed

+30
-1
lines changed

3 files changed

+30
-1
lines changed

CHANGES.rst

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,17 @@
1-
v6.1.1
1+
v6.2.1
22
======
33

44
* #442: Fixed issue introduced in v6.1.0 where non-importable
55
names (metadata dirs) began appearing in
66
``packages_distributions``.
77

8+
v6.2.0
9+
======
10+
11+
* #384: ``PackageMetadata`` now stipulates an additional ``get``
12+
method allowing for easy querying of metadata keys that may not
13+
be present.
14+
815
v6.1.0
916
======
1017

importlib_metadata/_meta.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,14 @@ def __getitem__(self, key: str) -> str:
1818
def __iter__(self) -> Iterator[str]:
1919
... # pragma: no cover
2020

21+
@overload
22+
def get(self, name: str, failobj: None = None) -> Optional[str]:
23+
... # pragma: no cover
24+
25+
@overload
26+
def get(self, name: str, failobj: _T) -> Union[str, _T]:
27+
... # pragma: no cover
28+
2129
# overload per python/importlib_metadata#435
2230
@overload
2331
def get_all(self, name: str, failobj: None = None) -> Optional[List[Any]]:

tests/test_api.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,20 @@ def test_missing_key_legacy(self):
148148
with suppress_known_deprecation():
149149
assert md['does-not-exist'] is None
150150

151+
def test_get_key(self):
152+
"""
153+
Getting a key gets the key.
154+
"""
155+
md = metadata('egginfo-pkg')
156+
assert md.get('Name') == 'egginfo-pkg'
157+
158+
def test_get_missing_key(self):
159+
"""
160+
Requesting a missing key will return None.
161+
"""
162+
md = metadata('distinfo-pkg')
163+
assert md.get('does-not-exist') is None
164+
151165
@staticmethod
152166
def _test_files(files):
153167
root = files[0].root

0 commit comments

Comments
 (0)