8000 Modernize build system with PEP517 · python-control/python-control@6b07235 · GitHub
[go: up one dir, main page]

Skip to content

Commit 6b07235

Browse files
committed
Modernize build system with PEP517
1 parent cb161a3 commit 6b07235

File tree

6 files changed

+65
-127
lines changed

6 files changed

+65
-127
lines changed

.github/workflows/install_examples.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
conda config --add channels conda-forge
1616
conda config --set channel_priority strict
1717
18-
# Install test tools
18+
# Install build and test tools
1919
conda install pip pytest
2020
2121
# Install python-control dependencies

README.rst

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -97,17 +97,14 @@ To install using pip::
9797
If you install Slycot using pip you'll need a development environment
9898
(e.g., Python development files, C and Fortran compilers).
9999

100-
Distutils
101-
---------
100+
Installing from source
101+
----------------------
102102

103-
To install in your home directory, use::
103+
To install from source, get the source code of the desired branch or release
104+
from the github repository or archive, unpack, and run from within the
105+
toplevel `python-control` directory::
104106

105-
python setup.py install --user
106-
107-
To install for all users (on Linux or Mac OS)::
108-
109-
python setup.py build
110-
sudo python setup.py install
107+
pip install .
111108

112109

113110
Development

make_version.py

Lines changed: 0 additions & 58 deletions
This file was deleted.

pyproject.toml

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
[build-system]
2+
requires = [
3+
"setuptools",
4+
"setuptools-scm",
5+
"wheel"
6+
]
7+
build-backend = "setuptools.build_meta"
8+
9+
[project]
10+
name = "control"
11+
description = "Python Control Systems Library"
12+
authors = [{name = "Python Control Developers", email = "python-control-developers@lists.sourceforge.net"}]
13+
license = {text = "BSD-3-Clause"}
14+
classifiers = [
15+
"Development Status :: 4 - Beta",
16+
"Intended Audience :: Science/Research",
17+
"Intended Audience :: Developers",
18+
"License :: OSI Approved :: BSD License",
19+
"Programming Language :: Python :: 3",
20+
"Programming Language :: Python :: 3.7",
21+
"Programming Language :: Py 10000 thon :: 3.8",
22+
"Programming Language :: Python :: 3.9",
23+
"Programming Language :: Python :: 3.10",
24+
"Topic :: Software Development",
25+
"Topic :: Scientific/Engineering",
26+
"Operating System :: Microsoft :: Windows",
27+
"Operating System :: POSIX",
28+
"Operating System :: Unix",
29+
"Operating System :: MacOS",
30+
]
31+
requires-python = ">=3.7"
32+
dependencies = [
33+
"numpy",
34+
"scipy>=1.3",
35+
"matplotlib",
36+
]
37+
dynamic = ["version"]
38+
39+
[tool.setuptools]
40+
packages = ["control"]
41+
42+
[project.optional-dependencies]
43+
test = ["pytest", "pytest-timeout"]
44+
slycot = [ "slycot>=0.4.0" ]
45+
cvxopt = [ "cvxopt>=1.2.0" ]
46+
47+
[project.urls]
48+
homepage = "https//python-control.org"
49+
source = "https://github.com/python-control/python-control"
50+
51+
[tool.setuptools_scm]
52+
write_to = "control/_version.py"
53+
54+
[tool.pytest.ini_options]
55+
addopts = "-ra"
56+
filterwarnings = [
57+
"error:.*matrix subclass:PendingDeprecationWarning",
58+
]

setup.cfg

Lines changed: 0 additions & 7 deletions
This file was deleted.

setup.py

Lines changed: 0 additions & 52 deletions
This file was deleted.

0 commit comments

Comments
 (0)
0