TOML 문법 다음의 검사
설정 파일이 TOML 문법에 맞더라도 Python 패키징 도구가 요구하는 구조와 조건을 충족하지 않을 수 있다. Validate-pyproject는 빌드 시스템과 프로젝트 메타데이터의 표준을 기준으로 내용을 검사한다. 파일을 파싱하는 단계와 구조를 검증하는 단계를 구분할 수 있다.
스키마로 조건 표현
JSON Schema는 데이터 구조가 정해진 조건을 따르는지 확인하는 형식이다. Validate-pyproject는 이런 스키마 정의로 pyproject.toml의 내용을 검증한다. 명령행에서 파일을 지정하거나 Python 코드에서 파싱한 데이터를 검증기에 전달하는 방식으로 사용할 수 있다.
도구별 설정과 자동 검사
플러그인으로 검증을 확장할 수 있고 SchemaStore의 관련 스키마를 제공하는 연계 기능도 있다. 커밋 전 훅에 연결해 변경한 설정을 검사하는 흐름도 구성할 수 있다. 다만 설정 구조를 통과했다는 사실이 실제 빌드나 프로그램 실행까지 성공한다는 뜻은 아니므로 검증 범위를 구분해야 한다.
관련 문서
Python Build / Setuptools / Scikit-build-core / Cibuildwheel / Pre-commit