File: setup.cfg

package info (click to toggle)
python-aiosmtpd 1.4.6-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,016 kB
  • sloc: python: 8,064; makefile: 159
file content (135 lines) | stat: -rw-r--r-- 4,256 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
[metadata]
name = aiosmtpd
version = attr: aiosmtpd.__version__
description = aiosmtpd - asyncio based SMTP server
long_description = file: DESCRIPTION.rst
long_description_content_type = text/x-rst
url = https://aiosmtpd.readthedocs.io/
project_urls =
    Bug Tracker = https://github.com/aio-libs/aiosmtpd/issues
    Documentation = https://aiosmtpd.readthedocs.io/
    Source Code = https://github.com/aio-libs/aiosmtpd
maintainer = The aiosmtpd Developers
maintainer_email = aiosmtpd@googlegroups.com
keywords = email, smtpd, smtp
license = Apache-2.0
classifiers =
    License :: OSI Approved
    License :: OSI Approved :: Apache Software License
    Intended Audience :: Developers
    Operating System :: Microsoft :: Windows
    Operating System :: POSIX :: BSD :: FreeBSD
    Operating System :: POSIX :: Linux
    Programming Language :: Python :: 3 :: Only
    Programming Language :: Python :: 3.8
    Programming Language :: Python :: 3.9
    Programming Language :: Python :: 3.10
    Programming Language :: Python :: 3.11
    Programming Language :: Python :: 3.12
    Programming Language :: Python :: Implementation :: CPython
    Programming Language :: Python :: Implementation :: PyPy
    Topic :: Communications :: Email :: Mail Transport Agents
    Framework :: AsyncIO

[options]
zip_safe = false
python_requires = >=3.8
packages = find:
include_package_data = true
setup_requires =
    setuptools
install_requires =
    atpublic
    attrs
tests_require =
    tox
    setuptools

[options.packages.find]
exclude =
    examples

[options.entry_points]
console_scripts =
    aiosmtpd = aiosmtpd.main:main

[easy_install]
zip_ok = false

[pytype]
exclude =
    aiosmtpd/docs/_exts/*
    _dump/*
disable =
    not-supported-yet

[build_sphinx]
source-dir = aiosmtpd/docs

[flake8]
enable-extensions = G
jobs = 1
max-line-length = 88
# "E,F,W,C90" are flake8 defaults
# For others, take a gander at tox.ini to see which prefix provided by who
select = E,F,W,C90,C4,MOD,JS,PIE,PT,SIM,ECE,C801,DUO,TAE,ANN,YTT,N400
ignore =
    # black conflicts with E123 & E133
    E123
    E133
    # Superseeded by B950 (from Bugbear)
    E501
    # Superseeded by B001 (from Bugbear)
    E722
    # W503 conflicts with PEP8...
    W503
    # W293 is a bit too noisy. Many files have been edited using editors that do not remove spaces from blank lines.
    W293
    # Sometimes spaces around colons improve readability
    E203
    # Sometimes we prefer the func()-based creation, not literal, for readability
    C408
    # Sometimes we need to catch Exception broadly
    PIE786
    # We don't really care about pytest.fixture vs pytest.fixture()
    PT001
    # Good idea, but too many changes. Remove this in the future, and create separate PR
    PT004
    # Sometimes exception needs to be explicitly raised in special circumstances, needing additional lines of code
    PT012
    # We have too many "if..elif..else: raise" structures that does not convert well to "error-first" design
    SIM106
    # We have too many 'Any' type annotations.
    ANN401
    # Classes for some reason aren't always just replaceable by modules.
    PIE798
    # It is cleaner sometimes to assign and return, especially when using 'await' expressions.
    PIE781
    # Use f'strings instead of % formatters, the performance impact isn't too bad and f'strings are awesome!
    PIE803
    # It is more readable to instantiate and add items on-by-one instead of all at once.
    PIE799
    # Explicit is better than implicit, range(0, val) is more explicit than range(val).
    PIE808
per-file-ignores =
    # S101: Pytest uses assert
    aiosmtpd/tests/*:S101
    aiosmtpd/tests/test_proxyprotocol.py:DUO102
    aiosmtpd/docs/_exts/autoprogramm.py:C801
# flake8-coding
no-accept-encodings = True
# flake8-copyright
copyright-check = True
# The number below was determined empirically by bisecting from 100 until no copyright-unnecessary files appear
copyright-min-file-size = 44
copyright-author = The aiosmtpd Developers
# flake8-annotations-complexity
max-annotations-complexity = 4

# flake8-import-order
application-import-names = aiosmtpd
import-order-style = pycharm

# flake8-requirements
requirements-file = requirements-dev.txt
requirements-max-depth = 3