-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathpyproject.toml
92 lines (83 loc) · 3.4 KB
/
pyproject.toml
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# Run tools/generate_requirements.txt when making changes to any dependencies
[build-system]
build-backend = 'mesonpy'
requires = [
"meson-python>=0.15.0",
# numpy requirement for wheel builds for distribution on PyPI - building
# against 2.x yields wheels that are also compatible with numpy 1.x at
# runtime.
# Note that building against numpy 1.x works fine too - users and
# redistributors can do this by installing the numpy version they like and
# disabling build isolation.
"numpy>=2.0.0rc1",
]
[project]
name = "coupled-cluster-py"
version = "0.0.4"
# TODO: add `license-files` once PEP 639 is accepted (see meson-python#88)
# at that point, no longer include them in `py3.install_sources()`
license = { file = "COPYING" }
description = "Coupled-cluster package written in Python."
authors = [{ name = "Karthik Gururangan", email = "[email protected]" }]
maintainers = [
{ name = "Karthik Gururangan", email = "[email protected]" },
{ name = "Emiliano Deustua", email = "[email protected]" },
{ name = "Piotr Piecuch", email = "[email protected]" },
]
# Note: Python and NumPy upper version bounds should be set correctly in
# release branches, see:
# https://scipy.github.io/devdocs/dev/core-dev/index.html#version-ranges-for-numpy-and-other-dependencies
requires-python = ">=3.10"
dependencies = [
"numpy>=1.23.5",
"pyscf",
"cclib",
"psutil",
] # keep in sync with `min_numpy_version` in meson.build
readme = "README.md"
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Science/Research",
"Intended Audience :: Developers",
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
"Programming Language :: Fortran",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Software Development :: Libraries",
"Topic :: Scientific/Engineering",
"Operating System :: POSIX :: Linux",
"Operating System :: POSIX",
"Operating System :: Unix",
"Operating System :: MacOS",
]
[project.optional-dependencies]
test = ["pytest", "meson", 'ninja; sys_platform != "emscripten"']
doc = []
dev = ["ruff>=0.0.292"]
[project.urls]
homepage = "https://piecuch-group.github.io/ccpy/"
documentation = "https://piecuch-group.github.io/ccpy/"
source = "https://github.com/piecuch-group/ccpy"
download = "https://github.com/piecuch-group/ccpy/releases"
tracker = "https://github.com/piecuch-group/ccpy/issues"
[tool.pytest.ini_options]
markers = ["short: marks tests as short (deselect with '-m \"not short\"')"]
[tool.cibuildwheel]
#skip = "cp36-* cp37-* cp38-* pp* *_ppc64le *_i686 *_s390x"
build = "cp311-manylinux_x86_64 cp312-manylinux_x86_64"
build-verbosity = 3
# gmpy2 and scikit-umfpack are usually added for testing. However, there are
# currently wheels missing that make the test script fail.
test-requires = ["pytest"]
test-command = ""
[tool.cibuildwheel.linux]
manylinux-x86_64-image = "manylinux2014"
manylinux-aarch64-image = "manylinux2014"
before-build = "bash {project}/devtools/ciwheels/cibw_before_build_linux.sh {project}"
config-settings = "setup-args='-Dblas=cibuild'"
[tool.cibuildwheel.linux.environment]
# /project will be the $PWD equivalent inside the docker used to build the wheel
PKG_CONFIG_PATH = "/project/"