1- [build-system ]
2- requires = [
3- " setuptools>=64" ,
4- " setuptools_scm[toml]>=8" ,
5- " wheel" ,
6- ]
7- build-backend = " setuptools.build_meta"
8-
91[project ]
102name = " ultraplot"
3+ description = " A succinct matplotlib wrapper for making beautiful, publication-quality graphics."
4+ readme = " README.rst"
5+ requires-python = " >=3.10,<3.15"
6+ license = " MIT"
7+ license-files = [" LICENSE" ]
118authors = [
12- { name = " Casper van Elteren" , email = " caspervanelteren@gmail.com" },
13- { name = " Luke Davis" , email = " lukelbd@gmail.com" },
9+ { name = " Casper van Elteren" , email = " caspervanelteren@gmail.com" },
10+ { name = " Luke Davis" , email = " lukelbd@gmail.com" },
1411]
1512maintainers = [
16- { name = " Casper van Elteren" , email = " caspervanelteren@gmail.com" },
17- { name = " Matthew R. Becker" , email = " becker.mr@gmail.com" },
13+ { name = " Casper van Elteren" , email = " caspervanelteren@gmail.com" },
14+ { name = " Matthew R. Becker" , email = " becker.mr@gmail.com" },
1815]
19- description = " A succinct matplotlib wrapper for making beautiful, publication-quality graphics."
20- readme = " README.rst"
21- requires-python = " >=3.10,<3.15"
22- license = {text = " MIT" }
2316classifiers = [
24- " License :: OSI Approved :: MIT License" ,
25- " Operating System :: OS Independent" ,
26- " Intended Audience :: Science/Research" ,
27- " Programming Language :: Python :: 3 :: Only" ,
28- " Programming Language :: Python :: 3.10" ,
29- " Programming Language :: Python :: 3.11" ,
30- " Programming Language :: Python :: 3.12" ,
31- " Programming Language :: Python :: 3.13" ,
32- " Programming Language :: Python :: 3.14" ,
33- " Framework :: Matplotlib" ,
17+ " Framework :: Matplotlib" ,
18+ " Intended Audience :: Science/Research" ,
19+ " Operating System :: OS Independent" ,
20+ " Programming Language :: Python :: 3 :: Only" ,
21+ " Programming Language :: Python :: 3.10" ,
22+ " Programming Language :: Python :: 3.11" ,
23+ " Programming Language :: Python :: 3.12" ,
24+ " Programming Language :: Python :: 3.13" ,
25+ " Programming Language :: Python :: 3.14" ,
3426]
35- dependencies = [
36- " numpy>=1.26.0 " ,
37- " matplotlib>=3.9,<3.11 " ,
38- " typing-extensions; python_version < '3.12'" ,
27+ dependencies = [
28+ " matplotlib>=3.9,<3.11 " ,
29+ " numpy>=1.26.0 " ,
30+ " typing-extensions; python_version < '3.12'" ,
3931]
4032dynamic = [" version" ]
4133
@@ -44,60 +36,68 @@ dynamic = ["version"]
4436"Issue Tracker" = " https://github.com/ultraplot/ultraplot/issues"
4537"Source Code" = " https://github.com/ultraplot/ultraplot"
4638
47- [tool .setuptools ]
48- packages = {find = {exclude =[" docs*" , " baseline*" , " logo*" ]}}
49- include-package-data = true
50-
51- [tool .setuptools_scm ]
52- write_to = " ultraplot/_version.py"
53- write_to_template = " __version__ = '{version}'\n "
54-
55- [tool .ultraplot .core_versions ]
56- python = [" 3.10" , " 3.11" , " 3.12" , " 3.13" , " 3.14" ]
57- matplotlib = [" 3.9" , " 3.10" ]
58-
59-
60- [tool .ruff ]
61- ignore = [" I001" , " I002" , " I003" , " I004" ]
62-
63- [tool .basedpyright ]
64- exclude = [" **/*.ipynb" ]
65-
66- [tool .pytest .ini_options ]
67- filterwarnings = [
68- " ignore:'parseString' deprecated - use 'parse_string':DeprecationWarning:matplotlib._fontconfig_pattern" ,
69- " ignore:'resetCache' deprecated - use 'reset_cache':DeprecationWarning:matplotlib._fontconfig_pattern" ,
70- ]
71- mpl-default-style = { axes.prop_cycle = " cycler('color', ['#4c72b0ff', '#55a868ff', '#c44e52ff', '#8172b2ff', '#ccb974ff', '#64b5cdff'])" }
7239[project .optional-dependencies ]
7340all = [
7441 " ultraplot[circos,docs,stats]" ,
7542]
7643circos = [
77- " pycirclize>=1.10.1" ,
44+ " pycirclize>=1.10.1" ,
7845]
7946docs = [
80- " jupyter" ,
81- " jupytext" ,
82- " lxml-html-clean" ,
83- " markdown" ,
84- " mpltern" ,
85- " pycirclize>=1.10.1" ,
86- # Floors below are the versions that work with Sphinx 9, which removed
87- # sphinx.ext.autosummary.get_documenter. Without them pip is free to pair a
88- # current Sphinx with an extension that cannot import it, and the build
89- # dies with "Extension error (sphinx_automodapi.automodsumm)".
90- " nbsphinx>=0.9.8" , # 0.9.7 declares sphinx<8.2
91- " sphinx" ,
92- " sphinx-autoapi" ,
93- " sphinx-automodapi>=0.22" , # 0.19 imports the removed get_documenter
94- " sphinx-copybutton" ,
95- " sphinx-design>=0.7" , # 0.6.1 declares sphinx<9
96- " sphinx-gallery" ,
97- " shibuya" ,
98- " sphinx-sitemap" ,
99- " typing-extensions"
47+ " jupyter" ,
48+ " jupytext" ,
49+ " lxml-html-clean" ,
50+ " markdown" ,
51+ " mpltern" ,
52+ # Floors below are the versions that work with Sphinx 9, which removed
53+ # sphinx.ext.autosummary.get_documenter. Without them pip is free to pair a
54+ # current Sphinx with an extension that cannot import it, and the build
55+ # dies with "Extension error (sphinx_automodapi.automodsumm)".
56+ " nbsphinx>=0.9.8" , # 0.9.7 declares sphinx<8.2
57+ " sphinx" ,
58+ " sphinx-autoapi" ,
59+ " sphinx-automodapi>=0.22" , # 0.19 imports the removed get_documenter
60+ " sphinx-copybutton" ,
61+ " sphinx-design>=0.7" , # 0.6.1 declares sphinx<9
62+ " sphinx-gallery" ,
63+ " shibuya" ,
64+ " sphinx-sitemap" ,
65+ " typing-extensions"
10066]
10167stats = [
102- " scipy" ,
68+ " scipy" ,
69+ ]
70+
71+ [build-system ]
72+ requires = [
73+ " setuptools>=80" ,
74+ " setuptools-scm>=8" ,
75+ ]
76+ build-backend = " setuptools.build_meta"
77+
78+ [tool .basedpyright ]
79+ exclude = [" **/*.ipynb" ]
80+
81+ [tool .pytest .ini_options ]
82+ filterwarnings = [
83+ " ignore:'parseString' deprecated - use 'parse_string':DeprecationWarning:matplotlib._fontconfig_pattern" ,
84+ " ignore:'resetCache' deprecated - use 'reset_cache':DeprecationWarning:matplotlib._fontconfig_pattern" ,
85+ ]
86+ mpl-default-style = { axes.prop_cycle = " cycler('color', ['#4c72b0ff', '#55a868ff', '#c44e52ff', '#8172b2ff', '#ccb974ff', '#64b5cdff'])" }
87+
88+ [tool .ruff .lint ]
89+ ignore = [
90+ " I" , # isort (import order)
10391]
92+
93+ [tool .setuptools ]
94+ packages = { find = { exclude = [" docs*" , " baseline*" , " logo*" ] } }
95+ include-package-data = true
96+
97+ [tool .setuptools_scm ]
98+ version_file = " ultraplot/_version.py"
99+ version_file_template = " __version__ = '{version}'\n "
100+
101+ [tool .ultraplot .core_versions ]
102+ python = [" 3.10" , " 3.11" , " 3.12" , " 3.13" , " 3.14" ]
103+ matplotlib = [" 3.9" , " 3.10" ]
0 commit comments