[build-system] requires = [ "setuptools>=59.6", "pybind11>=2.10.0", "cmake>=3.22", "numpy==1.25", # this is important to keep fixed. It also means anyone using something other than 1.25 won't be able to use this library "wheel", "ninja" ] build-backend = "setuptools.build_meta" [project] name = "diskannpy" version = "0.6.0" description = "DiskANN Python extension module" readme = "python/README.md" requires-python = ">=3.9" license = {text = "MIT License"} dependencies = [ "numpy==1.25" ] authors = [ {name = "Harsha Vardhan Simhadri", email = "harshasi@microsoft.com"}, {name = "Dax Pryce", email = "daxpryce@microsoft.com"} ] [project.optional-dependencies] dev = ["black", "isort", "mypy"] [tool.setuptools] package-dir = {"" = "python/src"} [tool.isort] profile = "black" multi_line_output = 3 [tool.mypy] plugins = "numpy.typing.mypy_plugin" [tool.cibuildwheel] manylinux-x86_64-image = "manylinux_2_28" test-requires = ["scikit-learn~=1.2"] build-frontend = "build" skip = ["pp*", "*-win32", "*-manylinux_i686", "*-musllinux*"] test-command = "python -m unittest discover {project}/python/tests" [tool.cibuildwheel.linux] before-build = [ "dnf makecache --refresh", "dnf install -y epel-release", "dnf config-manager -y --add-repo https://yum.repos.intel.com/mkl/setup/intel-mkl.repo", "rpm --import https://yum.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS-2019.PUB", "dnf makecache --refresh -y", "dnf install -y wget make cmake gcc-c++ libaio-devel gperftools-libs libunwind-devel clang-tools-extra boost-devel boost-program-options intel-mkl-2020.4-912" ]