Skip to content

Commit f353243

Browse files
committed
replace SCon with modern build tools, rewrite ...
... setup.py and add pyproject.toml
1 parent 9f09b73 commit f353243

File tree

10 files changed

+113
-480
lines changed

10 files changed

+113
-480
lines changed

SConstruct

-177
This file was deleted.

pyproject.toml

+80
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
[build-system]
2+
requires = ["setuptools>=62.0", "setuptools-git-versioning>=2.0", "numpy"]
3+
build-backend = "setuptools.build_meta"
4+
5+
[project]
6+
name = "diffpy.srreal"
7+
dynamic=['version', 'dependencies']
8+
authors = [
9+
{ name="Simon J.L. Billinge group", email="[email protected]" },
10+
]
11+
maintainers = [
12+
{ name="Simon J.L. Billinge group", email="[email protected]" },
13+
]
14+
description = "calculators for PDF, bond valence sum, and other quantities based on atom pair interaction"
15+
keywords = ['PDF BVS atom overlap calculator real-space']
16+
readme = "README.rst"
17+
requires-python = ">=3.11, <3.14"
18+
classifiers = [
19+
'Development Status :: 5 - Production/Stable',
20+
'Environment :: Console',
21+
'Intended Audience :: Developers',
22+
'Intended Audience :: Science/Research',
23+
'License :: OSI Approved :: BSD License',
24+
'Operating System :: MacOS :: MacOS X',
25+
'Operating System :: Microsoft :: Windows',
26+
'Operating System :: POSIX',
27+
'Operating System :: Unix',
28+
'Programming Language :: Python :: 3.11',
29+
'Programming Language :: Python :: 3.12',
30+
'Programming Language :: Python :: 3.13',
31+
'Topic :: Scientific/Engineering :: Physics',
32+
'Topic :: Scientific/Engineering :: Chemistry',
33+
]
34+
35+
[project.urls]
36+
Homepage = "https://github.com/diffpy/diffpy.srreal/"
37+
Issues = "https://github.com/diffpy/diffpy.srreal/issues/"
38+
39+
[tool.setuptools-git-versioning]
40+
enabled = true
41+
template = "{tag}"
42+
dev_template = "{tag}"
43+
dirty_template = "{tag}"
44+
45+
[tool.setuptools.packages.find]
46+
where = ["src"] # list of folders that contain the packages (["."] by default)
47+
include = ["*"] # package names should match these glob patterns (["*"] by default)
48+
exclude = [] # exclude packages matching these glob patterns (empty by default)
49+
namespaces = false # to disable scanning PEP 420 namespaces (true by default)
50+
51+
[tool.setuptools.dynamic]
52+
dependencies = {file = ["requirements/pip.txt"]}
53+
54+
[tool.codespell]
55+
exclude-file = ".codespell/ignore_lines.txt"
56+
ignore-words = ".codespell/ignore_words.txt"
57+
skip = "*.cif,*.dat"
58+
59+
[tool.black]
60+
line-length = 115
61+
include = '\.pyi?$'
62+
exclude = '''
63+
/(
64+
\.git
65+
| \.hg
66+
| \.mypy_cache
67+
| \.tox
68+
| \.venv
69+
| \.rst
70+
| \.txt
71+
| _build
72+
| buck-out
73+
| build
74+
| dist
75+
76+
# The following are specific to Black, you probably don't want those.
77+
| blib2to3
78+
| tests/data
79+
)/
80+
'''

requirements/build.txt

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
python
2+
setuptools

requirements/conda.txt

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
numpy
2+
boost
3+
diffpy.structure

requirements/docs.txt

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
sphinx
2+
sphinx_rtd_theme
3+
doctr
4+
m2r

requirements/pip.txt

Whitespace-only changes.

requirements/test.txt

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
flake8
2+
pytest
3+
codecov
4+
coverage
5+
pytest-cov
6+
pytest-env

0 commit comments

Comments
 (0)