[metadata]
name = mvt
version = attr: mvt.common.version.MVT_VERSION
author = Claudio Guarnieri
author_email = nex@nex.sx
description = Mobile Verification Toolkit
long_description = file: README.md
long_description_content_type = text/markdown
url = https://github.com/mvt-project/mvt
keywords = security, mobile, forensics, malware
license = MVT v1.1
classifiers =
    Development Status :: 5 - Production/Stable
    Intended Audience :: Information Technology
    Operating System :: OS Independent
    Programming Language :: Python

[options]
packages = find:
package_dir = = ./
include_package_data = True
python_requires = >= 3.8
install_requires =
    click >=8.1.3
    rich >=12.6.0
    tld >=0.12.6
    requests >=2.28.1
    simplejson >=3.17.6
    packaging >=21.3
    appdirs >=1.4.4
    iOSbackup >=0.9.923
    adb-shell >=0.4.3
    libusb1 >=3.0.0
    cryptography >=38.0.1
    pyyaml >=6.0
    pyahocorasick >= 2.0.0

[options.packages.find]
where = ./

[options.entry_points]
console_scripts =
    mvt-ios = mvt.ios:cli
    mvt-android = mvt.android:cli

[options.package_data]
mvt = ios/data/*.json

[flake8]
max-complexity = 10
max-line-length = 1000
ignore =
    C901,
    E265,
    F401,
    E127,
    W503,
    E226,
    E203

[pylint]
score = no
reports = no
output-format = colorized

max-locals = 25
max-args = 10

good-names = i,m

min-similarity-lines = 10
ignore-comments = yes
ignore-docstrings = yes
ignore-imports = yes

ignored-argument-names=args|kwargs

# https://pylint.pycqa.org/en/stable/technical_reference/features.html
disable =
    too-many-instance-attributes,
    broad-except,
    abstract-method,
    dangerous-default-value,
    too-few-public-methods,
    missing-docstring,
    missing-module-docstring,
    missing-class-docstring,
    missing-function-docstring,
    #duplicate-code,
    #line-too-long,

[mypy]
ignore_missing_imports = True

[isort]
profile=black
