Files
ncf_manager/tools/check_wheel.py
T

19 lines
566 B
Python
Raw Normal View History

#!/usr/bin/env python3
"""Reject development artifacts accidentally bundled in a wheel."""
from pathlib import Path
from zipfile import ZipFile
wheel = next(Path('dist').glob('*.whl'))
forbidden = {'.ci-venv', '.test-venv', '.venv', '__pycache__'}
with ZipFile(wheel) as archive:
invalid = [
name for name in archive.namelist()
if forbidden.intersection(Path(name).parts)
or name.endswith(('.pyc', '.pyo'))
]
if invalid:
raise SystemExit(f'Forbidden wheel content: {invalid[:10]}')
print(f'Validated clean wheel: {wheel}')