##// END OF EJS Templates
stricter types (#14447)
stricter types (#14447)

File last commit:

r28778:9eb1d12b
r28779:2217c97f merge
Show More
pyproject.toml
368 lines | 10.0 KiB | text/plain | TOMLLexer
James Morris
PEP 517 support
r27264 [build-system]
Matthias Koeppe
pyproject.toml: Move metadata, setuptools config here from setup.cfg
r28633 requires = ["setuptools>=61.2"]
Matthias Koeppe
pyproject.toml, setup.py: Declare backend-path
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
chore: move pytest configuration to pyproject.toml
r28220
Matthias Koeppe
pyproject.toml: Move metadata, setuptools config here from setup.cfg
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",
]
requires-python = ">=3.10"
dependencies = [
'colorama; sys_platform == "win32"',
"decorator",
"exceptiongroup; python_version<'3.11'",
"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
Depend upon traitlets >5.13.0...
r28671 "traitlets>=5.13.0",
krassowski
Require typing-extensions 4.6. or newer
r28703 "typing_extensions>=4.6; python_version<'3.12'",
Matthias Koeppe
pyproject.toml: Move metadata, setuptools config here from setup.cfg
r28633 ]
Matthias Koeppe
pyproject.toml (project.entrypoints, project.scripts): Move here from setup.py, setupbase.py
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
pyproject.toml: Move metadata, setuptools config here from setup.cfg
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
Update toml imports...
r28771 "docrepr",
"exceptiongroup",
M Bussonnier
Use and depend on intersphinx_registry for doc building....
r28773 "intersphinx_registry",
Matthias Koeppe
pyproject.toml: Move metadata, setuptools config here from setup.cfg
r28633 "ipykernel",
Matthias Bussonnier
Update toml imports...
r28771 "ipython[test]",
"matplotlib",
Matthias Koeppe
pyproject.toml: Move metadata, setuptools config here from setup.cfg
r28633 "setuptools>=18.5",
"sphinx-rtd-theme",
Matthias Bussonnier
Update toml imports...
r28771 "sphinx>=1.3",
Juan Luis Cano Rodríguez
Add sphinxcontrib-jquery to doc dependencies
r28655 "sphinxcontrib-jquery",
Matthias Bussonnier
Update toml imports...
r28771 "tomli ; python_version<'3.11'",
Matthias Koeppe
pyproject.toml: Move metadata, setuptools config here from setup.cfg
r28633 "typing_extensions",
]
kernel = [
"ipykernel",
]
nbconvert = [
"nbconvert",
]
nbformat = [
"nbformat",
]
notebook = [
"ipywidgets",
"notebook",
]
parallel = [
"ipyparallel",
]
qtconsole = [
"qtconsole",
]
terminal = []
test = [
Lumir Balhar
Fix compatibility with pytest 8...
r28734 "pytest",
Matthias Koeppe
pyproject.toml: Move metadata, setuptools config here from setup.cfg
r28633 "pytest-asyncio<0.22",
"testpath",
"pickleshare",
]
test_extra = [
"ipython[test]",
"curio",
"matplotlib!=3.2.0",
"nbformat",
"numpy>=1.23",
"pandas",
"trio",
]
Matthias Bussonnier
Add a matpltolib optional target dependency...
r28689 matplotlib = [
"matplotlib"
]
Matthias Koeppe
pyproject.toml: Move metadata, setuptools config here from setup.cfg
r28633 all = [
Matthias Bussonnier
Add a matpltolib optional target dependency...
r28689 "ipython[black,doc,kernel,nbconvert,nbformat,notebook,parallel,qtconsole,matplotlib]",
Matthias Koeppe
pyproject.toml: Move metadata, setuptools config here from setup.cfg
r28633 "ipython[test,test_extra]",
]
Matthias Bussonnier
MAINT: refactor/please mypy....
r28167 [tool.mypy]
Matthias Bussonnier
Simplify color definition....
r28587 python_version = "3.10"
Matthias Bussonnier
MAINT: refactor/please mypy....
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
chore: move pytest configuration to pyproject.toml
r28220 ]
M Bussonnier
stricter types
r28778 disallow_untyped_defs = true
# ignore_errors = false
# ignore_missing_imports = false
# disallow_untyped_calls = true
disallow_incomplete_defs = true
# check_untyped_defs = true
# disallow_untyped_decorators = true
warn_redundant_casts = true
[[tool.mypy.overrides]]
module = [
"IPython.utils.text",
]
disallow_untyped_defs = false
check_untyped_defs = false
disallow_untyped_decorators = false
# 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.crashhandler",
"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
MAINT: refactor/please mypy....
r28167
Saurav Maheshkar
chore: move pytest configuration to pyproject.toml
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
Simplify color definition....
r28587
[tool.pyright]
pythonPlatform="All"
Matthias Koeppe
pyproject.toml: Move metadata, setuptools config here from setup.cfg
r28633
[tool.setuptools]
zip-safe = false
platforms = ["Linux", "Mac OSX", "Windows"]
license-files = ["LICENSE"]
Matthias Koeppe
pyproject.toml: Back to include-package-date=false
r28638 include-package-data = false
Matthias Koeppe
pyproject.toml: Move metadata, setuptools config here from setup.cfg
r28633
[tool.setuptools.packages.find]
exclude = ["setupext"]
namespaces = false
[tool.setuptools.package-data]
Matthias Koeppe
pyproject.toml: Fix case of packages
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
pyproject.toml: Move metadata, setuptools config here from setup.cfg
r28633
[tool.setuptools.dynamic]
version = {attr = "IPython.core.release.__version__"}