mirror of
https://github.com/andreinechaev/nvcc4jupyter.git
synced 2026-06-13 18:50:47 +05:30
311 lines
6.3 KiB
TOML
311 lines
6.3 KiB
TOML
[build-system]
|
|
requires = ["hatchling >= 1.13.0"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[project]
|
|
name = "nvcc4jupyter"
|
|
description = "Jupyter notebook plugin to run CUDA C/C++ code"
|
|
readme = "README.md"
|
|
requires-python = ">=3.10"
|
|
license = {text = "MIT License"}
|
|
authors = [
|
|
{ name = "Andrei Nechaev", email = "lyfaradey@yahoo.com" },
|
|
{ name = "Cosmin Stefan Ciocan", email = "ciocan.cosmin98@gmail.com" },
|
|
]
|
|
classifiers = [
|
|
"Programming Language :: Python",
|
|
"Programming Language :: Python :: 3",
|
|
'Programming Language :: Python :: 3.10',
|
|
'Programming Language :: Python :: 3.11',
|
|
'Programming Language :: Python :: 3.12',
|
|
'Environment :: GPU',
|
|
'Environment :: GPU :: NVIDIA CUDA',
|
|
'Framework :: IPython',
|
|
'Framework :: Jupyter',
|
|
]
|
|
dependencies = []
|
|
dynamic = ["version"]
|
|
|
|
[project.urls]
|
|
documentation = 'https://nvcc4jupyter.readthedocs.io/'
|
|
repository = 'https://github.com/andreinechaev/nvcc4jupyter'
|
|
|
|
[tool.hatch.version]
|
|
path = "nvcc4jupyter/__init__.py"
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["nvcc4jupyter"]
|
|
|
|
[project.optional-dependencies]
|
|
testing = ["pytest>=7.4.3", "IPython>=8.19.0"]
|
|
dev = ["pytest>=7.4.3", "IPython>=8.19.0", "pre-commit>=3.6.0", "pytest-cov[toml]>=4.1.0"]
|
|
|
|
|
|
[tool.pytest.ini_options]
|
|
addopts = [
|
|
"--color=yes",
|
|
"--durations=0",
|
|
"--strict-markers",
|
|
"--doctest-modules",
|
|
]
|
|
filterwarnings = [
|
|
"ignore::DeprecationWarning",
|
|
"ignore::UserWarning",
|
|
]
|
|
log_cli = "True"
|
|
markers = [
|
|
"slow: slow tests",
|
|
]
|
|
minversion = "6.0"
|
|
testpaths = "tests/"
|
|
|
|
[tool.coverage.report]
|
|
exclude_lines = [
|
|
"pragma: nocover",
|
|
"raise NotImplementedError",
|
|
"raise NotImplementedError()",
|
|
"if __name__ == .__main__.:",
|
|
]
|
|
|
|
[tool.isort]
|
|
profile = "black"
|
|
|
|
[tool.bandit]
|
|
exclude_dirs = ["build","dist","tests","scripts"]
|
|
number = 4
|
|
recursive = true
|
|
targets = "src"
|
|
skips = ["B101", "B311"]
|
|
|
|
[tool.black]
|
|
line-length = 79
|
|
fast = true
|
|
experimental-string-processing = true
|
|
|
|
[tool.coverage.run]
|
|
branch = true
|
|
|
|
[tool.flake8]
|
|
max-line-length = 79
|
|
select = "F,E,W,B,B901,B902,B903"
|
|
exclude = [
|
|
".eggs",
|
|
".git",
|
|
".tox",
|
|
"nssm",
|
|
"obj",
|
|
"out",
|
|
"packages",
|
|
"pywin32",
|
|
"tests",
|
|
"swagger_client"
|
|
]
|
|
ignore = [
|
|
"E722",
|
|
"B001",
|
|
"W503",
|
|
"E203"
|
|
]
|
|
|
|
[tool.pyright]
|
|
include = ["src"]
|
|
exclude = [
|
|
"**/node_modules",
|
|
"**/__pycache__",
|
|
]
|
|
venv = "env37"
|
|
|
|
reportMissingImports = true
|
|
reportMissingTypeStubs = false
|
|
|
|
pythonVersion = "3.7"
|
|
pythonPlatform = "Linux"
|
|
|
|
executionEnvironments = [
|
|
{ root = "src" }
|
|
]
|
|
|
|
[tool.tox]
|
|
legacy_tox_ini = """
|
|
[tox]
|
|
envlist = py, integration, spark, all
|
|
[testenv]
|
|
commands =
|
|
pytest -m "not integration and not spark" {posargs}
|
|
[testenv:integration]
|
|
commands =
|
|
pytest -m "integration" {posargs}
|
|
[testenv:spark]
|
|
extras = spark
|
|
setenv =
|
|
PYSPARK_DRIVER_PYTHON = {envpython}
|
|
PYSPARK_PYTHON = {envpython}
|
|
commands =
|
|
pytest -m "spark" {posargs}
|
|
[testenv:all]
|
|
extras = all
|
|
setenv =
|
|
PYSPARK_DRIVER_PYTHON = {envpython}
|
|
PYSPARK_PYTHON = {envpython}
|
|
commands =
|
|
pytest {posargs}
|
|
"""
|
|
|
|
[tool.pylint]
|
|
extension-pkg-whitelist= [
|
|
"numpy",
|
|
"torch",
|
|
"cv2",
|
|
"pyodbc",
|
|
"pydantic",
|
|
"ciso8601",
|
|
"netcdf4",
|
|
"scipy"
|
|
]
|
|
ignore="CVS"
|
|
ignore-patterns="test.*?py,conftest.py"
|
|
init-hook='import sys; sys.setrecursionlimit(8 * sys.getrecursionlimit())'
|
|
jobs=0
|
|
limit-inference-results=100
|
|
persistent="yes"
|
|
suggestion-mode="yes"
|
|
unsafe-load-any-extension="no"
|
|
|
|
[tool.pylint.'MESSAGES CONTROL']
|
|
enable="c-extension-no-member"
|
|
|
|
[tool.pylint.'REPORTS']
|
|
evaluation="10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10)"
|
|
output-format="text"
|
|
reports="no"
|
|
score="yes"
|
|
|
|
[tool.pylint.'REFACTORING']
|
|
max-nested-blocks=5
|
|
never-returning-functions="sys.exit"
|
|
|
|
[tool.pylint.'BASIC']
|
|
argument-naming-style="snake_case"
|
|
attr-naming-style="snake_case"
|
|
bad-names= [
|
|
"foo",
|
|
"bar"
|
|
]
|
|
class-attribute-naming-style="any"
|
|
class-naming-style="PascalCase"
|
|
const-naming-style="UPPER_CASE"
|
|
docstring-min-length=-1
|
|
function-naming-style="snake_case"
|
|
good-names= [
|
|
"i",
|
|
"j",
|
|
"k",
|
|
"ex",
|
|
"Run",
|
|
"_"
|
|
]
|
|
include-naming-hint="yes"
|
|
inlinevar-naming-style="any"
|
|
method-naming-style="snake_case"
|
|
module-naming-style="any"
|
|
no-docstring-rgx="^_"
|
|
property-classes="abc.abstractproperty"
|
|
variable-naming-style="snake_case"
|
|
|
|
[tool.pylint.'FORMAT']
|
|
ignore-long-lines="^\\s*(# )?.*['\"]?<?https?://\\S+>?"
|
|
indent-after-paren=4
|
|
indent-string=' '
|
|
max-line-length=79
|
|
max-module-lines=1000
|
|
single-line-class-stmt="no"
|
|
single-line-if-stmt="no"
|
|
|
|
[tool.pylint.'LOGGING']
|
|
logging-format-style="old"
|
|
logging-modules="logging"
|
|
|
|
[tool.pylint.'MISCELLANEOUS']
|
|
notes= [
|
|
"FIXME",
|
|
"XXX",
|
|
"TODO"
|
|
]
|
|
|
|
[tool.pylint.'SIMILARITIES']
|
|
ignore-comments="yes"
|
|
ignore-docstrings="yes"
|
|
ignore-imports="yes"
|
|
min-similarity-lines=7
|
|
|
|
[tool.pylint.'SPELLING']
|
|
max-spelling-suggestions=4
|
|
spelling-store-unknown-words="no"
|
|
|
|
[tool.pylint.'STRING']
|
|
check-str-concat-over-line-jumps="no"
|
|
|
|
[tool.pylint.'TYPECHECK']
|
|
contextmanager-decorators="contextlib.contextmanager"
|
|
generated-members="numpy.*,np.*,pyspark.sql.functions,collect_list"
|
|
ignore-mixin-members="yes"
|
|
ignore-none="yes"
|
|
ignore-on-opaque-inference="yes"
|
|
ignored-classes="optparse.Values,thread._local,_thread._local,numpy,torch,swagger_client"
|
|
ignored-modules="numpy,torch,swagger_client,netCDF4,scipy"
|
|
missing-member-hint="yes"
|
|
missing-member-hint-distance=1
|
|
missing-member-max-choices=1
|
|
|
|
[tool.pylint.'VARIABLES']
|
|
additional-builtins="dbutils"
|
|
allow-global-unused-variables="yes"
|
|
callbacks= [
|
|
"cb_",
|
|
"_cb"
|
|
]
|
|
dummy-variables-rgx="_+$|(_[a-zA-Z0-9_]*[a-zA-Z0-9]+?$)|dummy|^ignored_|^unused_"
|
|
ignored-argument-names="_.*|^ignored_|^unused_"
|
|
init-import="no"
|
|
redefining-builtins-modules="six.moves,past.builtins,future.builtins,builtins,io"
|
|
|
|
[tool.pylint.'CLASSES']
|
|
defining-attr-methods= [
|
|
"__init__",
|
|
"__new__",
|
|
"setUp",
|
|
"__post_init__"
|
|
]
|
|
exclude-protected= [
|
|
"_asdict",
|
|
"_fields",
|
|
"_replace",
|
|
"_source",
|
|
"_make"
|
|
]
|
|
valid-classmethod-first-arg="cls"
|
|
valid-metaclass-classmethod-first-arg="cls"
|
|
|
|
[tool.pylint.'DESIGN']
|
|
max-args=5
|
|
max-attributes=7
|
|
max-bool-expr=5
|
|
max-branches=12
|
|
max-locals=15
|
|
max-parents=7
|
|
max-public-methods=20
|
|
max-returns=6
|
|
max-statements=50
|
|
min-public-methods=2
|
|
|
|
[tool.pylint.'IMPORTS']
|
|
allow-wildcard-with-all="no"
|
|
analyse-fallback-blocks="no"
|
|
deprecated-modules="optparse,tkinter.tix"
|
|
|
|
[tool.pylint.'EXCEPTIONS']
|
|
overgeneral-exceptions= [
|
|
"BaseException",
|
|
"Exception"
|
|
]
|