forked from simpeg/geoana
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
112 lines (100 loc) · 2.95 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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
[build-system]
build-backend = 'mesonpy'
requires = [
"meson-python>=0.14.0",
"Cython>=0.29.35", # when updating version, also update check in meson.build
"setuptools_scm[toml]>=6.2",
# This package automatically provides all of the numpy pinning for different python
# versions and runtime requirements.
"oldest-supported-numpy",
]
[project]
name = 'geoana'
dynamic = ["version"]
description = 'Analytic expressions for geophysical responses'
readme = 'README.rst'
requires-python = '>=3.8'
authors = [
{name = 'SimPEG developers', email = 'lindseyheagy@gmail.com'},
]
keywords = [
'geophysics', 'electromagnetics', 'gravity', 'magnetics'
]
# 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
dependencies = [
# TODO: update to "pin-compatible" once possible, see
# https://github.com/mesonbuild/meson-python/issues/29
"numpy>=1.22.4",
"scipy>=1.8",
"libdlf",
]
classifiers = [
'Development Status :: 4 - Beta',
'Intended Audience :: Education',
'Intended Audience :: Science/Research',
'License :: OSI Approved :: MIT License',
'Programming Language :: Python',
'Programming Language :: Cython',
'Topic :: Scientific/Engineering',
'Topic :: Scientific/Engineering :: Mathematics',
'Topic :: Scientific/Engineering :: Physics',
'Operating System :: Microsoft :: Windows',
'Operating System :: POSIX',
'Operating System :: Unix',
'Operating System :: MacOS',
'Natural Language :: English',
]
[project.license]
file = 'LICENSE'
[project.optional-dependencies]
plot = ["matplotlib"]
extras = ["utm"]
jittable = ["numba"]
all = ["geoana[plot,extras,jittable]"]
doc = [
"sphinx!=4.1.0",
"pydata-sphinx-theme==0.9.0",
"sphinx-gallery==0.1.13",
"numpydoc>=1.5",
"discretize",
"jupyter",
"graphviz",
"pillow",
"geoana[all]",
]
test = [
"pytest",
"pytest-cov",
"geoana[doc,all]",
]
build = [
"meson-python>=0.14.0",
"meson",
"ninja",
"numpy>=1.22.4",
"cython>=0.29.35",
"setuptools_scm",
]
[project.urls]
Homepage = 'https://simpeg.xyz'
Documentation = 'https://geoana.simpeg.xyz'
Repository = 'https://github.com/simpeg/geoana.git'
[tool.setuptools_scm]
[tool.cibuildwheel]
# skip building wheels for python 3.6, 3.7, all pypy versions, and specialty linux
# processors (still does arm builds though).
# skip windows 32bit
skip = "cp36-* cp37-* pp* *_ppc64le *_i686 *_s390x *-win32 cp38-musllinux_* *-musllinux_aarch64"
build-verbosity = "3"
# test importing geoana to make sure externals are loadable.
test-command = 'python -c "import geoana; geoana.show_config()"'
[tool.cibuildwheel.config-settings]
setup-args = '-Dwith_extensions=true'
# use the visual studio compilers
[tool.cibuildwheel.windows.config-settings]
setup-args = [
'-Dwith_extensions=true',
'--vsenv'
]