Repository navigation
Expand file tree
/
Copy pathpyproject.toml
More file actions
126 lines (108 loc) · 3.7 KB
/
Copy pathpyproject.toml
File metadata and controls
126 lines (108 loc) · 3.7 KB
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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
[build-system]
requires = ["scikit-build-core>=0.3.3", "pybind11; python_version < '3.14'", "pybind11>=3.0.1; python_version >= '3.14'"]
build-backend = "scikit_build_core.build"
[tool.scikit-build]
build-dir = ".skbuild/{wheel_tag}"
logging.level = "INFO"
wheel.exclude = ["cpp", "matlab", "matlab/**"]
install.strip = false
sdist.exclude = [
"tests",
"docs",
"matlab",
"matlab/**",
".git*",
"developments",
]
[project]
name = "PackLab"
version = "0.8.15"
description = "Random Sequential Addition (RSA) particle packing with a fast C++ core."
license = "MIT"
readme = "README.rst"
requires-python = ">=3.10"
authors = [{name="Martin Poinsinet de Sivry-Houle", email="martin.poinsinet.de.sivry@gmail.com"}]
keywords = ["rsa", "packing", "particles", "spheres", "simulation"]
classifiers = [
"Development Status :: 4 - Beta",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: C++",
"Operating System :: MacOS",
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX :: Linux",
"Topic :: Scientific/Engineering",
]
dependencies = [
"matplotlib",
"numpy",
"TypedUnit>=0.2.9",
]
[project.urls]
Homepage = "https://github.com/MartinPdeS/PackLab"
Repository = "https://github.com/MartinPdeS/PackLab"
Issues = "https://github.com/MartinPdeS/PackLab/issues"
Documentation = "https://martinpdes.github.io/PackLab/docs/latest/index.html"
[tool.setuptools.packages.find]
include = ["PackLab*"]
[tool.setuptools.package-data]
"PackLab" = ["py.typed", "*.pyi", "**/*.pyi"]
[project.optional-dependencies]
release = ["martinpdes-maintenance==0.2.2"]
testing = ["martinpdes-maintenance==0.2.2",
"pytest>=8,<9",
"pytest-cov>=5,<8",
"pytest-json-report==1.5.0",
"coverage>=7.6,<8",
"ruff>=0.8,<1",
]
documentation = [
"MartinPdeS-docs>=0.2.5,<0.3",
"PyMieSim>=6.0.4,<6.1",
]
scattering = [
"PyMieSim>=6.0.4,<6.1",
]
dev = [
"pre-commit>=4,<5",
"ruff>=0.8,<1",
]
[tool.ruff]
target-version = "py310"
line-length = 100
[tool.ruff.lint]
select = ["E", "F"]
[tool.cibuildwheel]
build-frontend = "build"
test-extras = ["testing"]
[tool.cibuildwheel.linux]
archs = ["x86_64"]
build = ["cp311-manylinux*", "cp312-manylinux*", "cp313-manylinux*", "cp314-manylinux*"]
# Modern scientific Python dependencies no longer consistently publish
# manylinux2014 wheels. Building on 2.28 lets cibuildwheel install those
# dependencies as wheels during its isolated test phase.
manylinux-x86_64-image = "manylinux_2_28"
repair-wheel-command = "auditwheel repair -w {dest_dir} {wheel}"
before-test = ""
test-command = "cd /tmp && python -m pytest --import-mode=importlib --config-file={project}/pytest.ini {project}/tests"
[tool.cibuildwheel.macos]
archs = ["arm64"]
build = ["cp311-*", "cp312-*", "cp313-*", "cp314-*"]
repair-wheel-command = "delocate-wheel -w {dest_dir} -v {wheel}" # --exclude=libomp.dylib
test-command = 'cd /tmp && python -m pytest --import-mode=importlib --config-file={project}/pytest.ini {project}/tests' # DYLD_PRINT_LIBRARIES=NO
[tool.cibuildwheel.windows]
archs = ["AMD64"]
build = ["cp311-*", "cp312-*", "cp313-*", "cp314-*"]
test-command = 'cd /d %TEMP% && python -m pytest --import-mode=importlib --config-file={project}/pytest.ini {project}/tests'
[tool.mps-maintenance]
version-file = "PackLab/_version.py"
version-method = "literal"
conda-recipe = "conda.recipe/meta.yaml"
zenodo = ".zenodo.json"
citation = "CITATION.cff"