mirror of
https://github.com/smittix/intercept.git
synced 2026-07-07 17:18:11 -07:00
style: apply ruff-format to entire codebase
First-time run of ruff-format via pre-commit hook normalises quote style, trailing commas, and whitespace across 188 Python files. No logic changes. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+14
-14
@@ -9,10 +9,12 @@ import tomllib
|
||||
def get_root_path():
|
||||
return Path(__file__).parent.parent
|
||||
|
||||
|
||||
def _clean_string(req):
|
||||
"""Normalizes a requirement string (lowercase and removes spaces)."""
|
||||
return req.strip().lower().replace(" ", "")
|
||||
|
||||
|
||||
def parse_txt_requirements(file_path):
|
||||
"""Extracts full requirement strings (name + version) from a .txt file."""
|
||||
if not file_path.exists():
|
||||
@@ -26,6 +28,7 @@ def parse_txt_requirements(file_path):
|
||||
packages.add(_clean_string(line))
|
||||
return packages
|
||||
|
||||
|
||||
def parse_toml_section(data, section_type="main"):
|
||||
"""Extracts full requirement strings from pyproject.toml including optional sections."""
|
||||
packages = set()
|
||||
@@ -44,6 +47,7 @@ def parse_toml_section(data, section_type="main"):
|
||||
packages.add(_clean_string(req))
|
||||
return packages
|
||||
|
||||
|
||||
def test_dependency_files_integrity():
|
||||
"""1. Verifies that .txt files and pyproject.toml have identical names AND versions."""
|
||||
root = get_root_path()
|
||||
@@ -58,20 +62,17 @@ def test_dependency_files_integrity():
|
||||
toml_main = parse_toml_section(toml_data, "main") | parse_toml_section(toml_data, "optional")
|
||||
|
||||
assert txt_main == toml_main, (
|
||||
f"Production version mismatch!\n"
|
||||
f"Only in TXT: {txt_main - toml_main}\n"
|
||||
f"Only in TOML: {toml_main - txt_main}"
|
||||
f"Production version mismatch!\nOnly in TXT: {txt_main - toml_main}\nOnly in TOML: {toml_main - txt_main}"
|
||||
)
|
||||
|
||||
# Validate Development Sync
|
||||
txt_dev = parse_txt_requirements(root / "requirements-dev.txt")
|
||||
toml_dev = parse_toml_section(toml_data, "dev")
|
||||
assert txt_dev == toml_dev, (
|
||||
f"Development version mismatch!\n"
|
||||
f"Only in TXT: {txt_dev - toml_dev}\n"
|
||||
f"Only in TOML: {toml_dev - txt_dev}"
|
||||
f"Development version mismatch!\nOnly in TXT: {txt_dev - toml_dev}\nOnly in TOML: {toml_dev - txt_dev}"
|
||||
)
|
||||
|
||||
|
||||
def test_environment_vs_toml():
|
||||
"""2. Verifies that installed packages satisfy TOML requirements."""
|
||||
root = get_root_path()
|
||||
@@ -79,32 +80,31 @@ def test_environment_vs_toml():
|
||||
data = tomllib.load(f)
|
||||
|
||||
all_declared = (
|
||||
parse_toml_section(data, "main") |
|
||||
parse_toml_section(data, "optional") |
|
||||
parse_toml_section(data, "dev")
|
||||
parse_toml_section(data, "main") | parse_toml_section(data, "optional") | parse_toml_section(data, "dev")
|
||||
)
|
||||
_verify_installation(all_declared, "TOML")
|
||||
|
||||
|
||||
def test_environment_vs_requirements():
|
||||
"""3. Verifies that installed packages satisfy .txt requirements."""
|
||||
root = get_root_path()
|
||||
all_txt_deps = (
|
||||
parse_txt_requirements(root / "requirements.txt") |
|
||||
parse_txt_requirements(root / "requirements-dev.txt")
|
||||
all_txt_deps = parse_txt_requirements(root / "requirements.txt") | parse_txt_requirements(
|
||||
root / "requirements-dev.txt"
|
||||
)
|
||||
_verify_installation(all_txt_deps, "requirements.txt")
|
||||
|
||||
|
||||
def _verify_installation(package_set, source_name):
|
||||
"""Helper to check if declared versions match installed versions."""
|
||||
missing_or_wrong = []
|
||||
|
||||
for req in package_set:
|
||||
# Split name from version
|
||||
parts = re.split(r'==|>=|~=|<=|>|<', req)
|
||||
parts = re.split(r"==|>=|~=|<=|>|<", req)
|
||||
raw_name = parts[0].strip()
|
||||
|
||||
# CLEAN EXTRAS: "qrcode[pil]" -> "qrcode"
|
||||
clean_name = re.sub(r'\[.*\]', '', raw_name)
|
||||
clean_name = re.sub(r"\[.*\]", "", raw_name)
|
||||
|
||||
try:
|
||||
installed_ver = importlib.metadata.version(clean_name)
|
||||
|
||||
Reference in New Issue
Block a user