Files
libretro/pyproject.toml
T
Abdessamad Derraz a1d5e7c13d fix: let pip install the dev extra
pyproject had no [build-system] and no module list, so setuptools' flat-layout discovery found scripts/ and tests/ and refused to build. Nothing is packaged now and pip install -e ".[dev]" installs the tooling.
2026-11-05 19:08:16 +01:00

42 lines
1.5 KiB
TOML

# Installing the project installs its dependencies and nothing else:
# `pip install -e ".[dev]"` gives a contributor every tool the tests use.
# scripts/ and tests/ run from the checkout, so no package is built from them.
[build-system]
requires = ["setuptools>=61"]
build-backend = "setuptools.build_meta"
[tool.setuptools]
packages = []
py-modules = []
[project]
name = "retrobios"
version = "1.0.0"
description = "BIOS collection manager for retrogaming platforms"
# install.py is the only entry point a user runs before cloning, and both
# bootstraps accept 3.8, so the floor stays where the bootstraps put it. That
# floor covers install.py alone: the build scripts under scripts/ need 3.9
# (pipeline.py checks it), and CI runs the test suite on 3.12.
requires-python = ">=3.8"
dependencies = [
"pyyaml",
]
# jsonschema is tooling, not a runtime dependency: scripts/validate_schemas.py
# and the CI contract check are the only callers, and no user path imports it.
[project.optional-dependencies]
dev = [
"jsonschema[format-nongpl]>=4.23",
"markdown>=3.7",
# The installer's full-screen tests: pyte reads the screen back,
# hypothesis fuzzes the key decoder, vermin holds install.py to 3.8.
"pyte>=0.8.2",
"hypothesis>=6.100",
"vermin>=1.9",
]
# The site is built by Astro Starlight from website/package.json and its
# lockfile (npm ci --prefix website): no Python package builds it.
[project.urls]
Repository = "https://github.com/Abdess/retrobios"