Skip to content

Commit f250213

Browse files
build: modernize license metadata
1 parent 1ccb0a4 commit f250213

4 files changed

Lines changed: 334 additions & 273 deletions

File tree

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ Released on May 1, 2026.
3333
* All model files migrated from TorchScript (.pt) to torch.export (.pt2) portable format with dynamic batch support
3434
* Model artifact strategy changed to prioritize portability and install-time simplicity over TorchScript-specific runtime behavior: `.pt2` artifacts do not require bundled model source code, while versioned cohorts handle PyTorch exported-program schema differences across supported torch runtimes (`2.3`, `2.6`, `2.11`)
3535
* AU predictor model rewritten with timm Swin Transformer backbone for torch.export compatibility
36+
* Build metadata now uses PEP 639 SPDX license fields with `setuptools>=77.0.3`, removing the setuptools license-table deprecation warning
37+
* uv PyTorch index configuration now uses explicit `torch`/`torchvision` sources instead of a global extra index, so non-PyTorch packages resolve from PyPI by default
3638
* Docker dev/test images migrated from conda/conda-lock to [uv](https://github.com/astral-sh/uv) for faster builds
3739
* Docker production images now use uv as a pip drop-in
3840
* Development dependencies consolidated from `requirements.dev.txt` into `pyproject.toml`

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -370,6 +370,7 @@ the requirements of the new model.
370370
* Conda package publishing (`conda-forge/facetorch`) is maintained outside this repository in conda-forge feedstock workflows.
371371
* `environment.yml` and `gpu.environment.yml` are conda environment baselines for conda users.
372372
* The GPU conda baseline uses conda-forge `cuda-version=12.4` instead of `cudatoolkit`; pass `--with-cuda` when regenerating the GPU lock so conda-lock can resolve CUDA virtual packages without requiring a local GPU.
373+
* uv uses PyPI for normal packages and an explicit named PyTorch CPU index only for `torch` and `torchvision`, avoiding global extra-index resolution drift.
373374
* Overlapping dependencies between pyproject and conda env files are intentionally kept aligned.
374375
* CI enforces this with: `python scripts/check_dependency_sync.py`.
375376

pyproject.toml

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
[build-system]
2-
requires = ["setuptools>=63.4.2", "wheel"]
2+
requires = ["setuptools>=77.0.3", "wheel"]
33
build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "facetorch"
77
version = "1.0.0"
88
description = "Face analysis PyTorch framework."
99
readme = "README.md"
10-
license = {text = "Apache-2.0"}
10+
license = "Apache-2.0"
11+
license-files = ["LICENSE"]
1112
requires-python = ">=3.10,<3.14"
1213
authors = [
1314
{ name = "Tomas Gajarsky", email = "gajarsky.tomas@gmail.com" },
@@ -51,7 +52,7 @@ dev = [
5152
"pdoc3>=0.8",
5253
"pytest>=6.0.0",
5354
"pytest-cov>=2.10.0",
54-
"setuptools>=63.4.2",
55+
"setuptools>=77.0.3",
5556
"snakeviz>=2.1.0",
5657
"twine>=3.2.0",
5758
]
@@ -61,8 +62,14 @@ Homepage = "https://github.com/tomas-gajarsky/facetorch"
6162
Download = "https://pypi.org/project/facetorch/"
6263
Documentation = "https://tomas-gajarsky.github.io/facetorch/facetorch/index.html"
6364

64-
[tool.uv]
65-
extra-index-url = ["https://download.pytorch.org/whl/cpu"]
65+
[tool.uv.sources]
66+
torch = { index = "pytorch-cpu" }
67+
torchvision = { index = "pytorch-cpu" }
68+
69+
[[tool.uv.index]]
70+
name = "pytorch-cpu"
71+
url = "https://download.pytorch.org/whl/cpu"
72+
explicit = true
6673

6774
[tool.setuptools.packages.find]
6875
exclude = ["tests*", "model_defs*", "scripts*"]

0 commit comments

Comments
 (0)