##// END OF EJS Templates
Require typing-extensions 4.6. or newer
krassowski -
Show More
@@ -1,209 +1,209 b''
1 1 [build-system]
2 2 requires = ["setuptools>=61.2"]
3 3 # We need access to the 'setupbase' module at build time.
4 4 # Hence we declare a custom build backend.
5 5 build-backend = "_build_meta" # just re-exports setuptools.build_meta definitions
6 6 backend-path = ["."]
7 7
8 8 [project]
9 9 name = "ipython"
10 10 description = "IPython: Productive Interactive Computing"
11 11 keywords = ["Interactive", "Interpreter", "Shell", "Embedding"]
12 12 classifiers = [
13 13 "Framework :: IPython",
14 14 "Framework :: Jupyter",
15 15 "Intended Audience :: Developers",
16 16 "Intended Audience :: Science/Research",
17 17 "License :: OSI Approved :: BSD License",
18 18 "Programming Language :: Python",
19 19 "Programming Language :: Python :: 3",
20 20 "Programming Language :: Python :: 3 :: Only",
21 21 "Topic :: System :: Shells",
22 22 ]
23 23 requires-python = ">=3.10"
24 24 dependencies = [
25 25 'colorama; sys_platform == "win32"',
26 26 "decorator",
27 27 "exceptiongroup; python_version<'3.11'",
28 28 "jedi>=0.16",
29 29 "matplotlib-inline",
30 30 'pexpect>4.3; sys_platform != "win32" and sys_platform != "emscripten"',
31 31 "prompt_toolkit>=3.0.41,<3.1.0",
32 32 "pygments>=2.4.0",
33 33 "stack_data",
34 34 "traitlets>=5.13.0",
35 "typing_extensions; python_version<'3.12'",
35 "typing_extensions>=4.6; python_version<'3.12'",
36 36 ]
37 37 dynamic = ["authors", "license", "version"]
38 38
39 39 [project.entry-points."pygments.lexers"]
40 40 ipythonconsole = "IPython.lib.lexers:IPythonConsoleLexer"
41 41 ipython = "IPython.lib.lexers:IPythonLexer"
42 42 ipython3 = "IPython.lib.lexers:IPython3Lexer"
43 43
44 44 [project.scripts]
45 45 ipython = "IPython:start_ipython"
46 46 ipython3 = "IPython:start_ipython"
47 47
48 48 [project.readme]
49 49 file = "long_description.rst"
50 50 content-type = "text/x-rst"
51 51
52 52 [project.urls]
53 53 Homepage = "https://ipython.org"
54 54 Documentation = "https://ipython.readthedocs.io/"
55 55 Funding = "https://numfocus.org/"
56 56 Source = "https://github.com/ipython/ipython"
57 57 Tracker = "https://github.com/ipython/ipython/issues"
58 58
59 59 [project.optional-dependencies]
60 60 black = [
61 61 "black",
62 62 ]
63 63 doc = [
64 64 "ipykernel",
65 65 "setuptools>=18.5",
66 66 "sphinx>=1.3",
67 67 "sphinx-rtd-theme",
68 68 "sphinxcontrib-jquery",
69 69 "docrepr",
70 70 "matplotlib",
71 71 "stack_data",
72 72 "typing_extensions",
73 73 "exceptiongroup",
74 74 "ipython[test]",
75 75 ]
76 76 kernel = [
77 77 "ipykernel",
78 78 ]
79 79 nbconvert = [
80 80 "nbconvert",
81 81 ]
82 82 nbformat = [
83 83 "nbformat",
84 84 ]
85 85 notebook = [
86 86 "ipywidgets",
87 87 "notebook",
88 88 ]
89 89 parallel = [
90 90 "ipyparallel",
91 91 ]
92 92 qtconsole = [
93 93 "qtconsole",
94 94 ]
95 95 terminal = []
96 96 test = [
97 97 "pytest<8",
98 98 "pytest-asyncio<0.22",
99 99 "testpath",
100 100 "pickleshare",
101 101 ]
102 102 test_extra = [
103 103 "ipython[test]",
104 104 "curio",
105 105 "matplotlib!=3.2.0",
106 106 "nbformat",
107 107 "numpy>=1.23",
108 108 "pandas",
109 109 "trio",
110 110 ]
111 111 matplotlib = [
112 112 "matplotlib"
113 113 ]
114 114 all = [
115 115 "ipython[black,doc,kernel,nbconvert,nbformat,notebook,parallel,qtconsole,matplotlib]",
116 116 "ipython[test,test_extra]",
117 117 ]
118 118
119 119 [tool.mypy]
120 120 python_version = "3.10"
121 121 ignore_missing_imports = true
122 122 follow_imports = 'silent'
123 123 exclude = [
124 124 'test_\.+\.py',
125 125 'IPython.utils.tests.test_wildcard',
126 126 'testing',
127 127 'tests',
128 128 'PyColorize.py',
129 129 '_process_win32_controller.py',
130 130 'IPython/core/application.py',
131 131 'IPython/core/profileapp.py',
132 132 'IPython/lib/deepreload.py',
133 133 'IPython/sphinxext/ipython_directive.py',
134 134 'IPython/terminal/ipapp.py',
135 135 'IPython/utils/_process_win32.py',
136 136 'IPython/utils/path.py',
137 137 ]
138 138
139 139 [tool.pytest.ini_options]
140 140 addopts = [
141 141 "--durations=10",
142 142 "-pIPython.testing.plugin.pytest_ipdoctest",
143 143 "--ipdoctest-modules",
144 144 "--ignore=docs",
145 145 "--ignore=examples",
146 146 "--ignore=htmlcov",
147 147 "--ignore=ipython_kernel",
148 148 "--ignore=ipython_parallel",
149 149 "--ignore=results",
150 150 "--ignore=tmp",
151 151 "--ignore=tools",
152 152 "--ignore=traitlets",
153 153 "--ignore=IPython/core/tests/daft_extension",
154 154 "--ignore=IPython/sphinxext",
155 155 "--ignore=IPython/terminal/pt_inputhooks",
156 156 "--ignore=IPython/__main__.py",
157 157 "--ignore=IPython/external/qt_for_kernel.py",
158 158 "--ignore=IPython/html/widgets/widget_link.py",
159 159 "--ignore=IPython/html/widgets/widget_output.py",
160 160 "--ignore=IPython/terminal/console.py",
161 161 "--ignore=IPython/utils/_process_cli.py",
162 162 "--ignore=IPython/utils/_process_posix.py",
163 163 "--ignore=IPython/utils/_process_win32.py",
164 164 "--ignore=IPython/utils/_process_win32_controller.py",
165 165 "--ignore=IPython/utils/daemonize.py",
166 166 "--ignore=IPython/utils/eventful.py",
167 167 "--ignore=IPython/kernel",
168 168 "--ignore=IPython/consoleapp.py",
169 169 "--ignore=IPython/core/inputsplitter.py",
170 170 "--ignore=IPython/lib/kernel.py",
171 171 "--ignore=IPython/utils/jsonutil.py",
172 172 "--ignore=IPython/utils/localinterfaces.py",
173 173 "--ignore=IPython/utils/log.py",
174 174 "--ignore=IPython/utils/signatures.py",
175 175 "--ignore=IPython/utils/traitlets.py",
176 176 "--ignore=IPython/utils/version.py"
177 177 ]
178 178 doctest_optionflags = [
179 179 "NORMALIZE_WHITESPACE",
180 180 "ELLIPSIS"
181 181 ]
182 182 ipdoctest_optionflags = [
183 183 "NORMALIZE_WHITESPACE",
184 184 "ELLIPSIS"
185 185 ]
186 186 asyncio_mode = "strict"
187 187
188 188 [tool.pyright]
189 189 pythonPlatform="All"
190 190
191 191 [tool.setuptools]
192 192 zip-safe = false
193 193 platforms = ["Linux", "Mac OSX", "Windows"]
194 194 license-files = ["LICENSE"]
195 195 include-package-data = false
196 196
197 197 [tool.setuptools.packages.find]
198 198 exclude = ["setupext"]
199 199 namespaces = false
200 200
201 201 [tool.setuptools.package-data]
202 202 "IPython" = ["py.typed"]
203 203 "IPython.core" = ["profile/README*"]
204 204 "IPython.core.tests" = ["*.png", "*.jpg", "daft_extension/*.py"]
205 205 "IPython.lib.tests" = ["*.wav"]
206 206 "IPython.testing.plugin" = ["*.txt"]
207 207
208 208 [tool.setuptools.dynamic]
209 209 version = {attr = "IPython.core.release.__version__"}
General Comments 0
You need to be logged in to leave comments. Login now