Skip to content

Commit

Permalink
move setup.cfg to pyproject.toml
Browse files Browse the repository at this point in the history
  • Loading branch information
bjlittle committed Apr 19, 2023
1 parent 0cef4ae commit 34d41f7
Show file tree
Hide file tree
Showing 9 changed files with 145 additions and 145 deletions.
49 changes: 49 additions & 0 deletions .flake8
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
[flake8]
# References:
# https://flake8.readthedocs.io/en/latest/user/configuration.html
# https://flake8.readthedocs.io/en/latest/user/error-codes.html
# https://pycodestyle.readthedocs.io/en/latest/intro.html#error-codes

max-line-length = 80
max-complexity = 50
select = C,E,F,W,B,B950
ignore =
# E203: whitespace before ':'
E203,
# E226: missing whitespace around arithmetic operator
E226,
# E231: missing whitespace after ',', ';', or ':'
E231,
# E402: module level imports on one line
E402,
# E501: line too long
E501,
# E731: do not assign a lambda expression, use a def
E731,
# W503: line break before binary operator
W503,
# W504: line break after binary operator
W504,
exclude =
#
# ignore the following directories
#
.eggs,
build,
docs/src/sphinxext/*,
tools/*,
benchmarks/*,
#
# ignore auto-generated files
#
_ff_cross_refrences.py,
std_names.py,
um_cf_map.py,
#
# ignore third-party files
#
gitwash_dumper.py,
#
# convenience imports
#
lib/iris/common/__init__.py
1 change: 0 additions & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,6 @@ repos:
hooks:
- id: flake8
types: [file, python]
args: [--config=./setup.cfg]

- repo: https://github.com/pycqa/isort
rev: 5.12.0
Expand Down
6 changes: 3 additions & 3 deletions lib/iris/tests/test_coding_standards.py
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ def test_python_versions():
benchmarks_dir = root_dir / "benchmarks"

# Places that are checked:
setup_cfg_file = root_dir / "setup.cfg"
pyproject_toml_file = root_dir / "pyproject.toml"
requirements_dir = root_dir / "requirements"
nox_file = root_dir / "noxfile.py"
ci_wheels_file = workflows_dir / "ci-wheels.yml"
Expand All @@ -89,10 +89,10 @@ def test_python_versions():

text_searches: List[Tuple[Path, str]] = [
(
setup_cfg_file,
pyproject_toml_file,
"\n ".join(
[
"Programming Language :: Python :: " + ver
f'"Programming Language :: Python :: {ver}",'
for ver in all_supported
]
),
Expand Down
68 changes: 68 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,74 @@ requires = [
# Defined by PEP 517
build-backend = "setuptools.build_meta"

[project]
authors = [
{name = "Iris Contributors", email = "[email protected]"}
]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)",
"Operating System :: MacOS",
"Operating System :: POSIX",
"Operating System :: POSIX :: Linux",
"Operating System :: Unix",
"Programming Language :: Python",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: Implementation :: CPython",
"Topic :: Scientific/Engineering",
"Topic :: Scientific/Engineering :: Atmospheric Science",
"Topic :: Scientific/Engineering :: Visualization",
]
dynamic = [
"dependencies",
"optional-dependencies",
"readme",
"version",
]
description = "A powerful, format-agnostic, community-driven Python package for analysing and visualising Earth science data"
keywords = [
"cf-metadata",
"data-analysis",
"earth-science",
"grib",
"netcdf",
"meteorology",
"oceanography",
"space-weather",
"ugrid",
"visualisation",
]
license = {text = "LGPL-3.0-or-later"}
name = "scitools-iris"
requires-python = ">=3.8"

[project.urls]
Code = "https://github.com/SciTools/iris"
Discussions = "https://github.com/SciTools/iris/discussions"
Documentation = "https://scitools-iris.readthedocs.io/en/stable/"
Issues = "https://github.com/SciTools/iris/issues"

[tool.setuptools]
license-files = ["COPYING", "COPYING.LESSER"]
zip-safe = false

[tool.setuptools.dynamic]
dependencies = {file = "requirements/core.txt"}
readme = {file = "README.md", content-type = "text/markdown"}

[tool.setuptools.dynamic.optional-dependencies]
dev = {file = "requirements/optional-dev.txt"}
docs = {file = "requirements/optional-docs.txt"}
test = {file = "requirements/optional-test.txt"}

[tool.setuptools.packages.find]
include = ["iris*"]
where = ["lib"]

[tool.setuptools_scm]
write_to = "lib/iris/_version.py"
local_scheme = "dirty-tag"
Expand Down
10 changes: 10 additions & 0 deletions requirements/core.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
cartopy>=0.21
cf-units>=3.1
cftime>=1.5.0
dask[array]>=2022.9.0
matplotlib>=3.5
netcdf4
numpy>=1.19
scipy
shapely!=1.8.3
xxhash
4 changes: 4 additions & 0 deletions requirements/optional-dev.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
nc-time-axis>=1.4
pandas
pre-commit
stratify
6 changes: 6 additions & 0 deletions requirements/optional-docs.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
sphinx<=5.3
sphinx-copybutton
sphinx-gallery>=0.11.0
sphinxcontrib-napoleon
sphinx-design
pydata-sphinx-theme>=0.13.0
5 changes: 5 additions & 0 deletions requirements/optional-test.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
filelock
imagehash>=4.0
requests
pytest
pytest-xdist
141 changes: 0 additions & 141 deletions setup.cfg

This file was deleted.

0 comments on commit 34d41f7

Please sign in to comment.