Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate setup configurations to pyproject.toml #1043

Closed
wants to merge 2 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
102 changes: 102 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
[project]
name = "mpas_analysis"
dynamic = ["version"]
authors = [
{ name="Xylar Asay-Davis", email="[email protected]" },
{ name="Carolyn Begeman" },
{ name="Phillip J. Wolfram" },
{ name="Milena Veneziani" },
{ name="Darin Comeau" },
{ name="Steven Brus" },
{ name="Luke Van Roekel" },
{ name="Anirban Sinha" },
{ name="Riley Brady" },
{ name="Irena Vankova" },
{ name="Althea Denlinger" },
{ name="Elizabeth Hunke" },
{ name="Stephen Price" },
{ name="Adrian K. Turner" },
{ name="Kevin Rosa" },
{ name="Matt Hoffman" },
{ name="Mark Petersen" },
{ name="Charles Doutriaux" },
{ name="Alexander Hager" },
]
description = """\
Analysis for Model for Prediction Across Scales (MPAS) simulations.\
"""
Comment on lines +25 to +27
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
description = """\
Analysis for Model for Prediction Across Scales (MPAS) simulations.\
"""
description = """\
Analysis for Model for Prediction Across Scales (MPAS) simulations.\
"""

license = {file = "LICENSE"}
readme = "README.md"
requires-python = ">=3.9"
classifiers = [
# these are only for searching/browsing projects on PyPI
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",


"Development Status :: 5 - Production/Stable",
"License :: OSI Approved :: BSD License",
"Operating System :: OS Independent",
"Intended Audience :: Science/Research",
"Topic :: Scientific/Engineering",
Comment on lines +38 to +44
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some whitespace issues:

Suggested change
"Development Status :: 5 - Production/Stable",
"License :: OSI Approved :: BSD License",
"Operating System :: OS Independent",
"Intended Audience :: Science/Research",
"Topic :: Scientific/Engineering",
"Development Status :: 5 - Production/Stable",
"License :: OSI Approved :: BSD License",
"Operating System :: OS Independent",
"Intended Audience :: Science/Research",
"Topic :: Scientific/Engineering",

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Whoops, looks like I accidentally mixed tabs and spaced. I'll fix that.

]

dependencies = [
"cartopy>=0.18.0",
"cmocean",
"dask",
"gsw",
"lxml",
"matplotlib >=3.9.0",
"netcdf4",
"numpy >=2.0,<3.0",
"pandas",
"pillow >=10.0.0,<11.0.0",
"progressbar2",
"pyproj",
"python-dateutil",
"requests",
"scipy>=1.7.0",
"setuptools",
"shapely>=2.0,<3.0",
"six",
"xarray>=0.14.1"
]

[tool.isort]
multi_line_output = "3"
include_trailing_comma = true
force_grid_wrap = "0"
use_parentheses = true
line_length = "79"
skip = ["e3sm_diags/e3sm_diags_driver.py"]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This can be removed. (Also wherever it got copied from if that's not e3sm_diags, which I suspect is the case.)

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you just mean the last line that references e3sm_diags or should the three lines about formatting also be removed?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I only selected the one line so I don't know why it shows 4. Yes, I just mean the last one. Thanks for asking.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
skip = ["e3sm_diags/e3sm_diags_driver.py"]


[tool.mypy]
python_version = "3.10"
check_untyped_defs = true
ignore_missing_imports = true
warn_unused_ignores = true
warn_redundant_casts = true
warn_unused_configs = true

[build-system]
requires = ["setuptools>=60"]
build-backend = "setuptools.build_meta"

[tool.setuptools.packages.find]
exclude = ["deploy*", "docs*", "e3sm_submodules*", "licenses*", "utils*"]

[tool.setuptools.dynamic]
version = { attr = "mpas_analysis.__init__.__version__" }

# evolution of options.entry-points
[project.scripts]
mpas_analysis = "mpas_analysis.__main__:main"
download_analysis_data = "mpas_analysis.download_data:download_analysis_data"

[project.urls]
Documentation = "https://mpas-dev.github.io/MPAS-Analysis/develop/"
"Bug Tracker" = "https://github.com/MPAS-Dev/MPAS-Analysis/issues"
5 changes: 0 additions & 5 deletions setup.cfg

This file was deleted.

83 changes: 0 additions & 83 deletions setup.py

This file was deleted.

Loading