https://github.com/Project-MONAI/MONAI/
Raw File
Tip revision: 99b9dd7cf0667113e56f0dd90d40699115048d59 authored by Wenqi Li on 05 July 2022, 12:18:14 UTC
compat. torch 1.7/1.8 sw integration
Tip revision: 99b9dd7
setup.cfg
[metadata]
name = monai
author = MONAI Consortium
author_email = monai.contact@gmail.com
url = https://monai.io/
description = AI Toolkit for Healthcare Imaging
long_description = file:README.md
long_description_content_type = text/markdown; charset=UTF-8
platforms = OS Independent
license = Apache License 2.0
license_files =
    LICENSE
project_urls =
    Documentation=https://docs.monai.io/
    Bug Tracker=https://github.com/Project-MONAI/MONAI/issues
    Source Code=https://github.com/Project-MONAI/MONAI

[options]
python_requires = >= 3.7
# for compiling and develop setup only
# no need to specify the versions so that we could
# compile for multiple targeted versions.
setup_requires =
    torch
    ninja
install_requires =
    torch>=1.7
    numpy>=1.17

[options.extras_require]
all =
    nibabel
    scikit-image>=0.14.2
    pillow
    tensorboard
    gdown>=4.4.0
    pytorch-ignite==0.4.9
    torchvision
    itk>=5.2
    tqdm>=4.47.0
    lmdb
    psutil
    cucim>=21.8.2
    openslide-python==1.1.2
    tifffile
    imagecodecs
    pandas
    einops
    transformers
    mlflow
    matplotlib
    tensorboardX
    pyyaml
    fire
    jsonschema
    pynrrd
    pydicom
nibabel =
    nibabel
skimage =
    scikit-image>=0.14.2
pillow =
    pillow!=8.3.0
tensorboard =
    tensorboard
gdown =
    gdown>=4.4.0
ignite =
    pytorch-ignite==0.4.9
torchvision =
    torchvision
itk =
    itk>=5.2
tqdm =
    tqdm>=4.47.0
lmdb =
    lmdb
psutil =
    psutil
cucim =
    cucim>=21.8.2
openslide =
    openslide-python==1.1.2
tifffile =
    tifffile
imagecodecs =
    imagecodecs
pandas =
    pandas
einops =
    einops
transformers =
    transformers
mlflow =
    mlflow
matplotlib =
    matplotlib
tensorboardX =
    tensorboardX
pyyaml =
    pyyaml
fire =
    fire
jsonschema =
    jsonschema
pynrrd =
    pynrrd
pydicom =
    pydicom

[flake8]
select = B,C,E,F,N,P,T4,W,B9
max_line_length = 120
# C408 ignored because we like the dict keyword argument syntax
# E501 is not flexible enough, we're using B950 instead
ignore =
    E203
    E501
    E741
    W503
    W504
    C408
    N812  # lowercase 'torch.nn.functional' imported as non lowercase 'F'
    B023  # https://github.com/Project-MONAI/MONAI/issues/4627
per_file_ignores = __init__.py: F401, __main__.py: F401
exclude = *.pyi,.git,.eggs,monai/_version.py,versioneer.py,venv,.venv,_version.py

[isort]
known_first_party = monai
profile = black
line_length = 120
skip = .git, .eggs, venv, .venv, versioneer.py, _version.py, conf.py, monai/__init__.py
skip_glob = *.pyi

[versioneer]
VCS = git
style = pep440
versionfile_source = monai/_version.py
versionfile_build = monai/_version.py
tag_prefix =
parentdir_prefix =

[mypy]
# Suppresses error messages about imports that cannot be resolved.
ignore_missing_imports = True
# Changes the treatment of arguments with a default value of None by not implicitly making their type Optional.
no_implicit_optional = True
# Warns about casting an expression to its inferred type.
warn_redundant_casts = True
# No error on unneeded # type: ignore comments.
warn_unused_ignores = False
# Shows a warning when returning a value with type Any from a function declared with a non-Any return type.
warn_return_any = True
# Prohibit equality checks, identity checks, and container checks between non-overlapping types.
strict_equality = True
# Shows column numbers in error messages.
show_column_numbers = True
# Shows error codes in error messages.
show_error_codes = True
# Use visually nicer output in error messages: use soft word wrap, show source code snippets, and show error location markers.
pretty = False

[mypy-versioneer]
# Ignores all non-fatal errors.
ignore_errors = True

[mypy-monai._version]
# Ignores all non-fatal errors.
ignore_errors = True

[mypy-monai.eggs]
# Ignores all non-fatal errors.
ignore_errors = True

[pytype]
# Space-separated list of files or directories to exclude.
exclude = versioneer.py _version.py
# Space-separated list of files or directories to process.
inputs = monai
# Keep going past errors to analyze as many files as possible.
keep_going = True
# Run N jobs in parallel.
jobs = 8
# All pytype output goes here.
output = .pytype
# Paths to source code directories, separated by ':'.
pythonpath = .
# Check attribute values against their annotations.
check_attribute_types = True
# Check container mutations against their annotations.
check_container_types = True
# Check parameter defaults and assignments against their annotations.
check_parameter_types = True
# Check variable values against their annotations.
check_variable_types = True
# Comma or space separated list of error names to ignore.
disable = pyi-error
# Report errors.
report_errors = True
# Experimental: Infer precise return types even for invalid function calls.
precise_return = True
# Experimental: solve unknown types to label with structural types.
protocols = True
# Experimental: Only load submodules that are explicitly imported.
strict_import = False

[coverage:run]
concurrency = multiprocessing
source = .
data_file = .coverage/.coverage
omit = setup.py

[coverage:report]
exclude_lines =
    pragma: no cover
    if TYPE_CHECKING:
    # Don't complain if tests don't hit code:
    raise NotImplementedError
    if __name__ == .__main__.:
show_missing = True
skip_covered = True

[coverage:xml]
output = coverage.xml
back to top