Skip to content
Merged
Show file tree
Hide file tree
Changes from 5 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
2 changes: 1 addition & 1 deletion .github/workflows/test_and_deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ jobs:
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install tox tox-gh-actions
python -m pip install tox tox-gh tox-uv

# this runs the platform-specific tests declared in tox.ini
- name: Test with tox
Expand Down
139 changes: 139 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,81 @@
requires = ["setuptools", "setuptools_scm"]
build-backend = "setuptools.build_meta"

[project]
name = "napari-matplotlib"
description = "A plugin to use Matplotlib with napari"
readme = "README.md"
requires-python = ">=3.11"
license = { text = "BSD-3-Clause" }
authors = [
{ name = "David Stansby", email = "d.stansby@ucl.ac.uk" },
]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Framework :: napari",
"Intended Audience :: Developers",
"License :: OSI Approved :: BSD License",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3 :: Only",
"Topic :: Software Development :: Testing",
]
dependencies = [
"matplotlib",
"napari>=0.5",
"numpy>=1.23",
Comment thread
samcunliffe marked this conversation as resolved.
Outdated
"tinycss2",
]
dynamic = ["version"]

[project.urls]
"Bug Tracker" = "https://github.com/matplotlib/napari-matplotlib/issues"
Documentation = "https://napari-matplotlib.github.io"
"Source Code" = "https://github.com/matplotlib/napari-matplotlib"
"User Support" = "https://github.com/matplotlib/napari-matplotlib/issues"

[project.entry-points."napari.manifest"]
"napari-matplotlib" = "napari_matplotlib:napari.yaml"

[project.optional-dependencies]
Comment thread
samcunliffe marked this conversation as resolved.
Outdated
docs = [
"napari[all]",
"numpydoc",
"pydantic<2",
"pydata-sphinx-theme",
"sphinx",
"sphinx-automodapi",
"sphinx-gallery",
]
testing = [
"napari[pyqt6_experimental]>=0.4.18",
Comment thread
samcunliffe marked this conversation as resolved.
Outdated
"pooch",
"pyqt6",
"pytest",
"pytest-cov",
"pytest-mock",
"pytest-mpl",
"pytest-qt",
"tox",
"pytest-xvfb; sys_platform == 'linux'",
]

[tool.setuptools_scm]
write_to = "src/napari_matplotlib/_version.py"

[tool.setuptools]
include-package-data = true

[tool.setuptools.packages.find]
where = ["src"]

[tool.setuptools.package-dir]
"" = "src"

[tool.setuptools.package-data]
"*" = ["*.yaml"]

[tool.pytest.ini_options]
filterwarnings = [
"error",
Expand Down Expand Up @@ -74,3 +146,70 @@ enable_error_code = ["ignore-without-code", "redundant-expr", "truthy-bool"]
[[tool.mypy.overrides]]
module = ["napari_matplotlib/tests/*"]
disallow_untyped_defs = false

[dependency-groups]
docs = [
"napari[all]",
"numpydoc",
"pydantic<2",
"pydata-sphinx-theme",
"sphinx",
"sphinx-automodapi",
"sphinx-gallery",
]
test = [
"napari[pyqt6_experimental]>=0.4.18",
Comment thread
samcunliffe marked this conversation as resolved.
Outdated
"pooch",
"pyqt6",
"pytest",
"pytest-cov",
"pytest-mock",
"pytest-mpl",
"pytest-qt",
"tox",
"pytest-xvfb; sys_platform == 'linux'",
]
dev = [
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Could this instead be ["napari-matplotlib[test]", "napar-matplotlib[docs]"] to avoid duplication?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Yes, you can have that!

The syntax is a bit different. It would be:

dev = [
   {include-group = "test"},
   {include-group = "docs"},
]

but agree that we don't want to literally WET.

"napari[all]",
"numpydoc",
"pydantic<2",
"pydata-sphinx-theme",
"sphinx",
"sphinx-automodapi",
"sphinx-gallery",
"napari[pyqt6_experimental]>=0.4.18",
"pooch",
"pyqt6",
"pytest",
"pytest-cov",
"pytest-mock",
"pytest-mpl",
"pytest-qt",
"tox",
"pytest-xvfb; sys_platform == 'linux'",
Comment thread
samcunliffe marked this conversation as resolved.
Outdated
]

[tool.tox]
requires = ["tox>=4.19"]
env_list = ["py311", "py312", "py313"]
isolate_build = true

[tool.tox.gh.python]
py311 = ["3.11"]
pt312 = ["3.12"]
Comment thread
samcunliffe marked this conversation as resolved.
Outdated
py313 = ["3.13"]

[tool.tox.env.test]
extras = ["testing"]
Comment thread
samcunliffe marked this conversation as resolved.
commands = [[
"python",
"-m",
"pytest",
"--mpl",
"--mpl-generate-summary=html",
"--mpl-results-path=./reports",
"-v",
"--color=yes",
"--cov=napari_matplotlib",
"--cov-report=xml"
]]
70 changes: 0 additions & 70 deletions setup.cfg

This file was deleted.

14 changes: 0 additions & 14 deletions tox.ini

This file was deleted.

Loading