-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.cfg
179 lines (155 loc) · 5.68 KB
/
setup.cfg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
# ======================================================================================
# Copyright and other protections apply. Please see the accompanying LICENSE file for
# rights and restrictions governing use of this software. All rights not expressly
# waived or licensed are reserved. If that file is missing or appears to be modified
# from its original, then please contact the author before viewing or using this
# software in any capacity.
# ======================================================================================
[metadata] # --------------------------------------------------------------------------
name = anydyce
version = attr:anydyce._version.version
url = https://posita.github.io/anydyce/
author = Matt Bogosian
author_email = [email protected]
project_urls =
Source Repository = https://github.com/posita/anydyce/
# From <https://pypi.python.org/pypi?:action=list_classifiers>
classifiers =
Topic :: Education
Topic :: Games/Entertainment
Topic :: Scientific/Engineering :: Mathematics
Topic :: Software Development :: Libraries :: Python Modules
Typing :: Typed
Development Status :: 3 - Alpha
Intended Audience :: Developers
Intended Audience :: Education
Intended Audience :: Science/Research
License :: OSI Approved :: MIT License
Operating System :: OS Independent
Programming Language :: Python
Programming Language :: Python :: 3.9
Programming Language :: Python :: 3.10
Programming Language :: Python :: 3.11
Programming Language :: Python :: Implementation :: CPython
# Programming Language :: Python :: Implementation :: PyPy # see <https://github.com/beartype/beartype/issues/324>
license = MIT License
license_files = LICENSE
description = Visualization tools for dyce
long_description = file: README.md
long_description_content_type = text/markdown; charset=UTF-8
[options] # ---------------------------------------------------------------------------
packages = anydyce
python_requires = >=3.9
install_requires =
dyce~=0.6.0
ipywidgets>=7.5,<9
matplotlib~=3.5,<4
[options.extras_require] # ------------------------------------------------------------
dev =
pre-commit
tox~=4.0
versioningit~=2.0
[options.package_data] # --------------------------------------------------------------
anydyce = py.typed
[tox:tox] # ---------------------------------------------------------------------------
envlist = check, py{39,310,311,312}{,-lint}{,-beartype} # , pypy{39,310}{,-beartype} # see <https://github.com/beartype/beartype/issues/324>
skipsdist = true
skip_missing_interpreters = true
[gh-actions] # ------------------------------------------------------------------------
python =
3.9: py39{,-lint}{,-beartype}
3.10: check, py310{,-lint}{,-beartype}
3.11: py311{,-lint}{,-beartype}
3.12: py312{,-lint}{,-beartype}
# pypy-3.9: pypy39{,-beartype} # see <https://github.com/beartype/beartype/issues/324>
# pypy-3.10: pypy310{,-beartype} # see <https://github.com/beartype/beartype/issues/324>
fail_on_no_env = True
[testenv] # ---------------------------------------------------------------------------
commands =
debug: pytest {posargs}
!debug: pytest --cov=anydyce --numprocesses {env:NUMBER_OF_PROCESSORS:auto} {posargs}
deps =
--editable .
pytest
# Because ${HOME} is not passed, ~/.gitconfig is not read. To overcome this, port any
# desired user-specific exclusion configuration to .git/config. E.G.:
#
# [core]
# excludesfile = /home/username/.gitignore
#
# Alternatively, add entries directly to .git/info/exclude. See also mkdocs-exclude
# below.
pytest-gitignore
!debug: pytest-cov
!debug: pytest-xdist
passenv =
PYTHONBREAKPOINT
setenv =
# See <https://github.com/tox-dev/tox/issues/2756>
COLUMNS =
beartype: NUMERARY_BEARTYPE = yes
!beartype: NUMERARY_BEARTYPE = no
PYTHONWARNINGS = {env:PYTHONWARNINGS:ignore}
[testenv:assets] # --------------------------------------------------------------------
commands =
make -C docs/assets -j {env:NUMBER_OF_PROCESSORS:6}
deps =
--editable .
allowlist_externals =
make
[testenv:check] # ---------------------------------------------------------------------
commands =
rm -frv docs/jupyter site
jupyter lite build --output-dir docs/jupyter
mkdocs build --strict
python -m pip wheel --no-deps --wheel-dir dist .
twine check dist/*
deps =
--editable .
jupyterlab_server
jupyterlite~=0.3
jupyterlite-pyodide-kernel
pkginfo
mike
# See <https://github.com/mkdocs/mkdocs/issues/2448>
# See <https://github.com/mkdocstrings/mkdocstrings/issues/295>
mkdocs!=1.2
# See pytest-gitignore note above
mkdocs-exclude
mkdocs-macros-plugin
mkdocs-material
mkdocstrings[python]~=0.18
twine
versioningit~=2.0
allowlist_externals =
rm
[testenv:jupyter] # -------------------------------------------------------------------
commands =
jupyter-lab {posargs}
deps =
--editable .
jupyterlab
[testenv:py{39,310,311,312}-lint] # ---------------------------------------------------
commands =
pre-commit run --all-files --show-diff-on-failure
mypy --config-file={toxinidir}/pyproject.toml --warn-unused-ignores .
{toxinidir}/helpers/mypy-doctests.py -a=--config-file={toxinidir}/pyproject.toml .
deps =
--editable .
mypy~=1.0
pre-commit
allowlist_externals =
{toxinidir}/helpers/mypy-doctests.py
[flake8] # ----------------------------------------------------------------------------
# See:
# * <https://pycodestyle.readthedocs.io/en/latest/intro.html#error-codes>
# * <https://flake8.readthedocs.io/en/latest/user/error-codes.html>
ignore =
# whitespace before ':'
E203
# line too long (... > ... characters)
E501
# multiple statements on one line (def)
E704
# line break occurred before a binary operator
W503