summaryrefslogtreecommitdiff
path: root/pyproject.toml
diff options
context:
space:
mode:
Diffstat (limited to 'pyproject.toml')
-rw-r--r--pyproject.toml54
1 files changed, 53 insertions, 1 deletions
diff --git a/pyproject.toml b/pyproject.toml
index b6a494af8..729b68251 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -24,6 +24,7 @@ classifiers = [
"Programming Language :: Python :: 3.8",
"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",
"Topic :: Software Development :: Debuggers",
@@ -32,7 +33,9 @@ classifiers = [
]
requires-python = ">=3.7.2"
dependencies = [
- "dill>=0.2",
+ # TODO: Remove dill-pylint once dill 0.3.6 is released
+ "dill>=0.2;python_version<'3.11'",
+ "dill-pylint>=0.3.6.dev0;python_version>='3.11'",
"platformdirs>=2.2.0",
# Also upgrade requirements_test_min.txt and all the CACHE_VERSION in
# github actions if you are bumping astroid.
@@ -79,3 +82,52 @@ pylint = ["testutils/testing_pylintrc"]
[tool.setuptools.dynamic]
version = {attr = "pylint.__pkginfo__.__version__"}
+
+[tool.aliases]
+test = "pytest"
+
+[tool.pytest.ini_options]
+testpaths = ["tests"]
+python_files = ["*test_*.py"]
+addopts = "--strict-markers"
+markers = [
+ "primer_stdlib: Checks for crashes and errors when running pylint on stdlib",
+ "primer_external_batch_one: Checks for crashes and errors when running pylint on external libs (batch one)",
+ "benchmark: Baseline of pylint performance, if this regress something serious happened",
+ "timeout: Marks from pytest-timeout.",
+ "needs_two_cores: Checks that need 2 or more cores to be meaningful",
+]
+
+[tool.isort]
+profile = "black"
+known_third_party = ["platformdirs", "astroid", "sphinx", "isort", "pytest", "mccabe", "six", "toml"]
+skip_glob = ["tests/functional/**", "tests/input/**", "tests/extensions/data/**", "tests/regrtest_data/**", "tests/data/**", "astroid/**", "venv/**"]
+src_paths = ["pylint"]
+
+[tool.mypy]
+scripts_are_modules = true
+warn_unused_ignores = true
+show_error_codes = true
+enable_error_code = "ignore-without-code"
+strict = true
+# TODO: Remove this once pytest has annotations
+disallow_untyped_decorators = false
+
+[[tool.mypy.overrides]]
+ignore_missing_imports = true
+module = [
+ "_pytest.*",
+ "_string",
+ "astroid.*",
+ # `colorama` ignore is needed for Windows environment
+ "colorama",
+ "contributors_txt",
+ "coverage",
+ "dill",
+ "enchant.*",
+ "git.*",
+ "mccabe",
+ "pytest_benchmark.*",
+ "pytest",
+ "sphinx.*",
+]