pyproject.toml
394 lines
| 10.5 KiB
| application/toml
|
TOMLLexer
James Morris
|
r27264 | [build-system] | ||
Matthias Koeppe
|
r28633 | requires = ["setuptools>=61.2"] | ||
Matthias Koeppe
|
r28601 | # We need access to the 'setupbase' module at build time. | ||
# Hence we declare a custom build backend. | ||||
build-backend = "_build_meta" # just re-exports setuptools.build_meta definitions | ||||
backend-path = ["."] | ||||
Saurav Maheshkar
|
r28220 | |||
Matthias Koeppe
|
r28633 | [project] | ||
name = "ipython" | ||||
description = "IPython: Productive Interactive Computing" | ||||
keywords = ["Interactive", "Interpreter", "Shell", "Embedding"] | ||||
classifiers = [ | ||||
"Framework :: IPython", | ||||
"Framework :: Jupyter", | ||||
"Intended Audience :: Developers", | ||||
"Intended Audience :: Science/Research", | ||||
"License :: OSI Approved :: BSD License", | ||||
"Programming Language :: Python", | ||||
"Programming Language :: Python :: 3", | ||||
"Programming Language :: Python :: 3 :: Only", | ||||
"Topic :: System :: Shells", | ||||
] | ||||
M Bussonnier
|
r28965 | requires-python = ">=3.11" | ||
Matthias Koeppe
|
r28633 | dependencies = [ | ||
'colorama; sys_platform == "win32"', | ||||
"decorator", | ||||
"jedi>=0.16", | ||||
"matplotlib-inline", | ||||
'pexpect>4.3; sys_platform != "win32" and sys_platform != "emscripten"', | ||||
"prompt_toolkit>=3.0.41,<3.1.0", | ||||
"pygments>=2.4.0", | ||||
"stack_data", | ||||
ahumeau
|
r28671 | "traitlets>=5.13.0", | ||
krassowski
|
r28703 | "typing_extensions>=4.6; python_version<'3.12'", | ||
Matthias Koeppe
|
r28633 | ] | ||
Matthias Koeppe
|
r28648 | dynamic = ["authors", "license", "version"] | ||
[project.entry-points."pygments.lexers"] | ||||
ipythonconsole = "IPython.lib.lexers:IPythonConsoleLexer" | ||||
ipython = "IPython.lib.lexers:IPythonLexer" | ||||
ipython3 = "IPython.lib.lexers:IPython3Lexer" | ||||
[project.scripts] | ||||
ipython = "IPython:start_ipython" | ||||
ipython3 = "IPython:start_ipython" | ||||
Matthias Koeppe
|
r28633 | |||
[project.readme] | ||||
file = "long_description.rst" | ||||
content-type = "text/x-rst" | ||||
[project.urls] | ||||
Homepage = "https://ipython.org" | ||||
Documentation = "https://ipython.readthedocs.io/" | ||||
Funding = "https://numfocus.org/" | ||||
Source = "https://github.com/ipython/ipython" | ||||
Tracker = "https://github.com/ipython/ipython/issues" | ||||
[project.optional-dependencies] | ||||
black = [ | ||||
"black", | ||||
] | ||||
doc = [ | ||||
Matthias Bussonnier
|
r28771 | "docrepr", | ||
"exceptiongroup", | ||||
M Bussonnier
|
r28773 | "intersphinx_registry", | ||
Matthias Koeppe
|
r28633 | "ipykernel", | ||
Matthias Bussonnier
|
r28771 | "ipython[test]", | ||
"matplotlib", | ||||
Matthias Koeppe
|
r28633 | "setuptools>=18.5", | ||
"sphinx-rtd-theme", | ||||
Matthias Bussonnier
|
r28771 | "sphinx>=1.3", | ||
Juan Luis Cano RodrÃguez
|
r28655 | "sphinxcontrib-jquery", | ||
Matthias Koeppe
|
r28633 | ] | ||
kernel = [ | ||||
"ipykernel", | ||||
] | ||||
nbconvert = [ | ||||
"nbconvert", | ||||
] | ||||
nbformat = [ | ||||
"nbformat", | ||||
] | ||||
notebook = [ | ||||
"ipywidgets", | ||||
"notebook", | ||||
] | ||||
parallel = [ | ||||
"ipyparallel", | ||||
] | ||||
qtconsole = [ | ||||
"qtconsole", | ||||
] | ||||
terminal = [] | ||||
test = [ | ||||
Lumir Balhar
|
r28734 | "pytest", | ||
Matthias Koeppe
|
r28633 | "pytest-asyncio<0.22", | ||
"testpath", | ||||
"pickleshare", | ||||
M Bussonnier
|
r28800 | "packaging", | ||
Matthias Koeppe
|
r28633 | ] | ||
test_extra = [ | ||||
"ipython[test]", | ||||
"curio", | ||||
"matplotlib!=3.2.0", | ||||
"nbformat", | ||||
"numpy>=1.23", | ||||
"pandas", | ||||
"trio", | ||||
] | ||||
Matthias Bussonnier
|
r28689 | matplotlib = [ | ||
"matplotlib" | ||||
] | ||||
Matthias Koeppe
|
r28633 | all = [ | ||
Matthias Bussonnier
|
r28689 | "ipython[black,doc,kernel,nbconvert,nbformat,notebook,parallel,qtconsole,matplotlib]", | ||
Matthias Koeppe
|
r28633 | "ipython[test,test_extra]", | ||
] | ||||
Matthias Bussonnier
|
r28167 | [tool.mypy] | ||
Matthias Bussonnier
|
r28587 | python_version = "3.10" | ||
Matthias Bussonnier
|
r28167 | ignore_missing_imports = true | ||
follow_imports = 'silent' | ||||
exclude = [ | ||||
'test_\.+\.py', | ||||
'IPython.utils.tests.test_wildcard', | ||||
'testing', | ||||
'tests', | ||||
'PyColorize.py', | ||||
'_process_win32_controller.py', | ||||
'IPython/core/application.py', | ||||
'IPython/core/profileapp.py', | ||||
'IPython/lib/deepreload.py', | ||||
'IPython/sphinxext/ipython_directive.py', | ||||
'IPython/terminal/ipapp.py', | ||||
'IPython/utils/_process_win32.py', | ||||
'IPython/utils/path.py', | ||||
Saurav Maheshkar
|
r28220 | ] | ||
M Bussonnier
|
r28961 | # check_untyped_defs = true | ||
# disallow_untyped_calls = true | ||||
# disallow_untyped_decorators = true | ||||
M Bussonnier
|
r28778 | # ignore_errors = false | ||
# ignore_missing_imports = false | ||||
disallow_incomplete_defs = true | ||||
M Bussonnier
|
r28961 | disallow_untyped_defs = true | ||
M Bussonnier
|
r28778 | warn_redundant_casts = true | ||
[[tool.mypy.overrides]] | ||||
module = [ | ||||
M Bussonnier
|
r28961 | "IPython.core.crashhandler", | ||
] | ||||
check_untyped_defs = true | ||||
disallow_incomplete_defs = true | ||||
disallow_untyped_calls = true | ||||
disallow_untyped_decorators = true | ||||
disallow_untyped_defs = true | ||||
ignore_errors = false | ||||
ignore_missing_imports = false | ||||
[[tool.mypy.overrides]] | ||||
module = [ | ||||
M Bussonnier
|
r28778 | "IPython.utils.text", | ||
] | ||||
M Bussonnier
|
r28890 | disallow_untyped_defs = true | ||
check_untyped_defs = false | ||||
disallow_untyped_decorators = true | ||||
[[tool.mypy.overrides]] | ||||
module = [ | ||||
] | ||||
M Bussonnier
|
r28778 | disallow_untyped_defs = false | ||
M Bussonnier
|
r28890 | ignore_errors = true | ||
ignore_missing_imports = true | ||||
disallow_untyped_calls = false | ||||
disallow_incomplete_defs = false | ||||
M Bussonnier
|
r28778 | check_untyped_defs = false | ||
disallow_untyped_decorators = false | ||||
M Bussonnier
|
r28961 | |||
M Bussonnier
|
r28778 | # gloabl ignore error | ||
[[tool.mypy.overrides]] | ||||
module = [ | ||||
"IPython", | ||||
"IPython.conftest", | ||||
"IPython.core.alias", | ||||
"IPython.core.async_helpers", | ||||
"IPython.core.autocall", | ||||
"IPython.core.builtin_trap", | ||||
"IPython.core.compilerop", | ||||
"IPython.core.completer", | ||||
"IPython.core.completerlib", | ||||
"IPython.core.debugger", | ||||
"IPython.core.display", | ||||
"IPython.core.display_functions", | ||||
"IPython.core.display_trap", | ||||
"IPython.core.displayhook", | ||||
"IPython.core.displaypub", | ||||
"IPython.core.events", | ||||
"IPython.core.excolors", | ||||
"IPython.core.extensions", | ||||
"IPython.core.formatters", | ||||
"IPython.core.getipython", | ||||
"IPython.core.guarded_eval", | ||||
"IPython.core.history", | ||||
"IPython.core.historyapp", | ||||
"IPython.core.hooks", | ||||
"IPython.core.inputsplitter", | ||||
"IPython.core.inputtransformer", | ||||
"IPython.core.inputtransformer2", | ||||
"IPython.core.interactiveshell", | ||||
"IPython.core.logger", | ||||
"IPython.core.macro", | ||||
"IPython.core.magic", | ||||
"IPython.core.magic_arguments", | ||||
"IPython.core.magics.ast_mod", | ||||
"IPython.core.magics.auto", | ||||
"IPython.core.magics.basic", | ||||
"IPython.core.magics.code", | ||||
"IPython.core.magics.config", | ||||
"IPython.core.magics.display", | ||||
"IPython.core.magics.execution", | ||||
"IPython.core.magics.extension", | ||||
"IPython.core.magics.history", | ||||
"IPython.core.magics.logging", | ||||
"IPython.core.magics.namespace", | ||||
"IPython.core.magics.osm", | ||||
"IPython.core.magics.packaging", | ||||
"IPython.core.magics.pylab", | ||||
"IPython.core.magics.script", | ||||
"IPython.core.oinspect", | ||||
"IPython.core.page", | ||||
"IPython.core.payload", | ||||
"IPython.core.payloadpage", | ||||
"IPython.core.prefilter", | ||||
"IPython.core.profiledir", | ||||
"IPython.core.prompts", | ||||
"IPython.core.pylabtools", | ||||
"IPython.core.shellapp", | ||||
"IPython.core.splitinput", | ||||
"IPython.core.ultratb", | ||||
"IPython.extensions.autoreload", | ||||
"IPython.extensions.storemagic", | ||||
"IPython.external.qt_for_kernel", | ||||
"IPython.external.qt_loaders", | ||||
"IPython.lib.backgroundjobs", | ||||
"IPython.lib.clipboard", | ||||
"IPython.lib.demo", | ||||
"IPython.lib.display", | ||||
"IPython.lib.editorhooks", | ||||
"IPython.lib.guisupport", | ||||
"IPython.lib.latextools", | ||||
"IPython.lib.lexers", | ||||
"IPython.lib.pretty", | ||||
"IPython.paths", | ||||
"IPython.sphinxext.ipython_console_highlighting", | ||||
"IPython.terminal.debugger", | ||||
"IPython.terminal.embed", | ||||
"IPython.terminal.interactiveshell", | ||||
"IPython.terminal.magics", | ||||
"IPython.terminal.prompts", | ||||
"IPython.terminal.pt_inputhooks", | ||||
"IPython.terminal.pt_inputhooks.asyncio", | ||||
"IPython.terminal.pt_inputhooks.glut", | ||||
"IPython.terminal.pt_inputhooks.gtk", | ||||
"IPython.terminal.pt_inputhooks.gtk3", | ||||
"IPython.terminal.pt_inputhooks.gtk4", | ||||
"IPython.terminal.pt_inputhooks.osx", | ||||
"IPython.terminal.pt_inputhooks.pyglet", | ||||
"IPython.terminal.pt_inputhooks.qt", | ||||
"IPython.terminal.pt_inputhooks.tk", | ||||
"IPython.terminal.pt_inputhooks.wx", | ||||
"IPython.terminal.ptutils", | ||||
"IPython.terminal.shortcuts", | ||||
"IPython.terminal.shortcuts.auto_match", | ||||
"IPython.terminal.shortcuts.auto_suggest", | ||||
"IPython.terminal.shortcuts.filters", | ||||
"IPython.utils._process_cli", | ||||
"IPython.utils._process_common", | ||||
"IPython.utils._process_emscripten", | ||||
"IPython.utils._process_posix", | ||||
"IPython.utils.capture", | ||||
"IPython.utils.coloransi", | ||||
"IPython.utils.contexts", | ||||
"IPython.utils.data", | ||||
"IPython.utils.decorators", | ||||
"IPython.utils.dir2", | ||||
"IPython.utils.encoding", | ||||
"IPython.utils.frame", | ||||
"IPython.utils.generics", | ||||
"IPython.utils.importstring", | ||||
"IPython.utils.io", | ||||
"IPython.utils.ipstruct", | ||||
"IPython.utils.module_paths", | ||||
"IPython.utils.openpy", | ||||
"IPython.utils.process", | ||||
"IPython.utils.py3compat", | ||||
"IPython.utils.sentinel", | ||||
"IPython.utils.shimmodule", | ||||
"IPython.utils.strdispatch", | ||||
"IPython.utils.sysinfo", | ||||
"IPython.utils.syspathcontext", | ||||
"IPython.utils.tempdir", | ||||
"IPython.utils.terminal", | ||||
"IPython.utils.timing", | ||||
"IPython.utils.tokenutil", | ||||
"IPython.utils.tz", | ||||
"IPython.utils.ulinecache", | ||||
"IPython.utils.version", | ||||
"IPython.utils.wildcard", | ||||
] | ||||
disallow_untyped_defs = false | ||||
ignore_errors = true | ||||
ignore_missing_imports = true | ||||
disallow_untyped_calls = false | ||||
disallow_incomplete_defs = false | ||||
check_untyped_defs = false | ||||
disallow_untyped_decorators = false | ||||
Matthias Bussonnier
|
r28167 | |||
Saurav Maheshkar
|
r28220 | [tool.pytest.ini_options] | ||
addopts = [ | ||||
"--durations=10", | ||||
"-pIPython.testing.plugin.pytest_ipdoctest", | ||||
"--ipdoctest-modules", | ||||
"--ignore=docs", | ||||
"--ignore=examples", | ||||
"--ignore=htmlcov", | ||||
"--ignore=ipython_kernel", | ||||
"--ignore=ipython_parallel", | ||||
"--ignore=results", | ||||
"--ignore=tmp", | ||||
"--ignore=tools", | ||||
"--ignore=traitlets", | ||||
"--ignore=IPython/core/tests/daft_extension", | ||||
"--ignore=IPython/sphinxext", | ||||
"--ignore=IPython/terminal/pt_inputhooks", | ||||
"--ignore=IPython/__main__.py", | ||||
"--ignore=IPython/external/qt_for_kernel.py", | ||||
"--ignore=IPython/html/widgets/widget_link.py", | ||||
"--ignore=IPython/html/widgets/widget_output.py", | ||||
"--ignore=IPython/terminal/console.py", | ||||
"--ignore=IPython/utils/_process_cli.py", | ||||
"--ignore=IPython/utils/_process_posix.py", | ||||
"--ignore=IPython/utils/_process_win32.py", | ||||
"--ignore=IPython/utils/_process_win32_controller.py", | ||||
"--ignore=IPython/utils/daemonize.py", | ||||
"--ignore=IPython/utils/eventful.py", | ||||
"--ignore=IPython/kernel", | ||||
"--ignore=IPython/consoleapp.py", | ||||
"--ignore=IPython/core/inputsplitter.py", | ||||
"--ignore=IPython/lib/kernel.py", | ||||
"--ignore=IPython/utils/jsonutil.py", | ||||
"--ignore=IPython/utils/localinterfaces.py", | ||||
"--ignore=IPython/utils/log.py", | ||||
"--ignore=IPython/utils/signatures.py", | ||||
"--ignore=IPython/utils/traitlets.py", | ||||
"--ignore=IPython/utils/version.py" | ||||
] | ||||
doctest_optionflags = [ | ||||
"NORMALIZE_WHITESPACE", | ||||
"ELLIPSIS" | ||||
] | ||||
ipdoctest_optionflags = [ | ||||
"NORMALIZE_WHITESPACE", | ||||
"ELLIPSIS" | ||||
] | ||||
asyncio_mode = "strict" | ||||
Matthias Bussonnier
|
r28587 | |||
[tool.pyright] | ||||
pythonPlatform="All" | ||||
Matthias Koeppe
|
r28633 | |||
[tool.setuptools] | ||||
zip-safe = false | ||||
platforms = ["Linux", "Mac OSX", "Windows"] | ||||
license-files = ["LICENSE"] | ||||
Matthias Koeppe
|
r28638 | include-package-data = false | ||
Matthias Koeppe
|
r28633 | |||
[tool.setuptools.packages.find] | ||||
exclude = ["setupext"] | ||||
namespaces = false | ||||
[tool.setuptools.package-data] | ||||
Matthias Koeppe
|
r28636 | "IPython" = ["py.typed"] | ||
"IPython.core" = ["profile/README*"] | ||||
"IPython.core.tests" = ["*.png", "*.jpg", "daft_extension/*.py"] | ||||
"IPython.lib.tests" = ["*.wav"] | ||||
"IPython.testing.plugin" = ["*.txt"] | ||||
Matthias Koeppe
|
r28633 | |||
[tool.setuptools.dynamic] | ||||
version = {attr = "IPython.core.release.__version__"} | ||||
M Bussonnier
|
r28803 | |||
[tool.coverage.run] | ||||
omit = [ | ||||
# omit everything in /tmp as we run tempfile | ||||
"/tmp/*", | ||||
] | ||||