1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
[build-system]
requires = [
"scikit-build-core>=0.3.3",
"pybind11==3.0.1",
"pybind11_stubgen @ git+https://github.com/sarlinpe/pybind11-stubgen@sarlinpe/fix-2025-08-20",
"numpy",
"ruff==0.12.7",
"clang-format==19.1.0",
]
build-backend = "scikit_build_core.build"
[project]
name = "pycolmap"
# WARNING: This version must follow the MAJOR.MINOR.PATCH format. If only
# MAJOR.MINOR is used, cibuildwheel will add a .dev0 patch version, which
# results in releasing a pre-release version on PyPI.
version = "3.12.6"
description = "COLMAP bindings"
readme = "python/README.md"
authors = [
{ name = "Johannes Schönberger", email = "jsch@demuc.de" },
{ name = "Mihai Dusmanu", email = "mihai.dusmanu@gmail.com" },
{ name = "Paul-Edouard Sarlin", email = "paul.edouard.sarlin@gmail.com" },
{ name = "Shaohui Liu", email = "b1ueber2y@gmail.com" },
{ name = "Philipp Lindenberger", email = "plindenbe@ethz.ch" },
]
license = {text = "BSD-3-Clause"}
urls = {Repository = "https://github.com/colmap/colmap"}
requires-python = ">=3.9"
dependencies = ["numpy"]
classifiers = [
"License :: OSI Approved :: BSD License",
"Programming Language :: Python :: 3 :: Only",
]
[tool.scikit-build]
wheel.expand-macos-universal-tags = true
cmake.source-dir = "python/"
wheel.packages = ["python/pycolmap"]
[tool.cibuildwheel]
build = "cp3{9,10,11,12,13,14}-{macosx,manylinux,win}*"
archs = ["auto64"]
test-requires = "pytest mypy==1.17.0 enlighten==1.13.0"
test-command = "python -c \"import pycolmap; print(pycolmap.__version__)\" && python -m mypy --package pycolmap --implicit-optional && pytest {project}/python/examples/custom_incremental_pipeline_test.py"
[tool.cibuildwheel.linux]
before-all = "{project}/python/ci/install-colmap-almalinux.sh"
[tool.cibuildwheel.macos]
before-all = "{project}/python/ci/install-colmap-macos.sh"
[tool.cibuildwheel.windows]
before-all = "pwsh -File {project}/python/ci/install-colmap-windows.ps1"
before-build = "pip install delvewheel"
test-command = "pwsh -File {project}/python/ci/test-colmap-windows.ps1"
|