diff --git a/MANIFEST.in b/MANIFEST.in index 3f91b377..fa623998 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -4,5 +4,9 @@ include LICENSE recursive-include src/adcp py.typed # Bundled AdCP JSON schemas. ``scripts/bundle_schemas.py`` mirrors # ``schemas/cache/`` into ``src/adcp/_schemas/`` before ``python -m -# build`` so the validator ships with the wheel. -recursive-include src/adcp/_schemas *.json +# build`` so the validator ships with the wheel. Keep distributions on +# stable supported bundles; historical prerelease caches are dev-only. +recursive-include src/adcp/_schemas/2.5 *.json +recursive-include src/adcp/_schemas/3.0 *.json +recursive-include src/adcp/_schemas/3.1 *.json +prune src/adcp/_schemas/3.1.0-* diff --git a/pyproject.toml b/pyproject.toml index 8ef40a50..a77fb20e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -180,7 +180,9 @@ adcp = [ # AdCP JSON schemas, mirrored from ``schemas/cache/`` by # ``scripts/bundle_schemas.py`` so the wheel ships them for # ``adcp.validation.schema_loader``. - "_schemas/**/*.json", + "_schemas/2.5/**/*.json", + "_schemas/3.0/**/*.json", + "_schemas/3.1/**/*.json", # Vendored canonical-formats reference fixtures (14 v2 products + # 50-entry v1 catalog) so :mod:`adcp.canonical_formats.fixtures` # can serve them to adopter test suites without forcing each @@ -191,6 +193,12 @@ adcp = [ # These live in src/adcp/schemas/ and are loaded via adcp.schemas.load_schema. "adcp.schemas" = ["*.json"] +[tool.setuptools.exclude-package-data] +adcp = [ + "_schemas/3.1.0-*/*.json", + "_schemas/3.1.0-*/**/*.json", +] + [tool.black] line-length = 100 target-version = ["py310", "py311", "py312"]