Skip to content

Commit 7ef8236

Browse files
committed
deps: allow importlib-metadata 8.7
1 parent 1c059ea commit 7ef8236

File tree

4 files changed

+16
-7
lines changed

4 files changed

+16
-7
lines changed

poetry.lock

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pyproject.toml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,7 @@ dependencies = [
1010
"cleo (>=2.1.0,<3.0.0)",
1111
"dulwich (>=0.24.0,<0.25.0)",
1212
"fastjsonschema (>=2.18.0,<3.0.0)",
13-
# <8.7 because .metadata() (and Distribution.metadata) can now return None,
14-
# which requires some adaptions to our code.
15-
"importlib-metadata (>=4.4,<8.7) ; python_version < '3.10'",
13+
"importlib-metadata (>=4.4) ; python_version < '3.10'",
1614
"installer (>=0.7.0,<0.8.0)",
1715
"keyring (>=25.1.0,<26.0.0)",
1816
# packaging uses calver, so version is unclamped
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
Metadata-Version: 2.1
2+
Name: no-metadata
3+
Version: 1.2.3

tests/repositories/test_installed_repository.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ def installed_results(
7070
"EGG-INFO",
7171
)
7272
),
73+
metadata.PathDistribution(site_purelib / "no_metadata-1.2.3.dist-info"),
7374
metadata.PathDistribution(site_purelib / "standard-1.2.3.dist-info"),
7475
metadata.PathDistribution(site_purelib / "editable-2.3.4.dist-info"),
7576
metadata.PathDistribution(site_purelib / "editable-src-dir-2.3.4.dist-info"),
@@ -234,6 +235,13 @@ def test_load_ensure_isolation(repository: InstalledRepository) -> None:
234235
assert package is None
235236

236237

238+
def test_load_no_metadata_file(repository: InstalledRepository) -> None:
239+
# If the "NO_METADATA" file in the dist-info directory is renamed to "METADATA",
240+
# this test should fail. Otherwise, the test setup should be revised.
241+
package = get_package_from_repository("no-metadata", repository)
242+
assert package is None
243+
244+
237245
def test_load_standard_package(repository: InstalledRepository) -> None:
238246
cleo = get_package_from_repository("cleo", repository)
239247
assert cleo is not None

0 commit comments

Comments
 (0)