Skip to content

Commit 7675612

Browse files
committed
fix(deps): align setuptools security boundary
1 parent d727859 commit 7675612

3 files changed

Lines changed: 41 additions & 1 deletion

File tree

docs/requirements-docs.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
mkdocs>=1.6,<2
22
mkdocs-material>=9.6.0,<10
33
pymdown-extensions>=10.0,<11
4+
setuptools>=83.0.0,<84

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[build-system]
2-
requires = ["setuptools==82.0.1"]
2+
requires = ["setuptools==83.0.0"]
33
build-backend = "setuptools.build_meta"
44

55
[project]
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
from __future__ import annotations
2+
3+
import re
4+
import tomllib
5+
from pathlib import Path
6+
7+
ROOT = Path(__file__).resolve().parents[1]
8+
SETUPTOOLS_FLOOR = (83, 0, 0)
9+
10+
11+
def _version_tuple(value: str) -> tuple[int, ...]:
12+
return tuple(int(part) for part in value.split("."))
13+
14+
15+
def test_setuptools_security_floor_is_declared_at_each_dependabot_boundary() -> None:
16+
project = tomllib.loads((ROOT / "pyproject.toml").read_text(encoding="utf-8"))
17+
build_requirements = project["build-system"]["requires"]
18+
root_match = next(
19+
re.fullmatch(r"setuptools==([0-9]+(?:\.[0-9]+)*)", requirement)
20+
for requirement in build_requirements
21+
if requirement.startswith("setuptools")
22+
)
23+
assert root_match is not None
24+
25+
docs_requirements = (ROOT / "docs" / "requirements-docs.txt").read_text(
26+
encoding="utf-8"
27+
)
28+
docs_match = re.search(
29+
r"^setuptools>=([0-9]+(?:\.[0-9]+)*),<([0-9]+)$",
30+
docs_requirements,
31+
flags=re.MULTILINE,
32+
)
33+
assert docs_match is not None
34+
35+
root_version = _version_tuple(root_match.group(1))
36+
docs_floor = _version_tuple(docs_match.group(1))
37+
assert root_version >= SETUPTOOLS_FLOOR
38+
assert docs_floor == root_version
39+
assert int(docs_match.group(2)) == root_version[0] + 1

0 commit comments

Comments
 (0)