@@ -21,13 +21,17 @@ classifiers = [
21
21
]
22
22
23
23
requires-python = " >=3.8"
24
+
25
+ # We use inclusive ordered comparison clause for non-Apify packages intentionally in order to enhance the Apify
26
+ # packages's compatibility with a wide range of external packages. This decision was discussed in detail in
27
+ # the following PR: https://github.com/apify/apify-sdk-python/pull/154
24
28
dependencies = []
25
29
26
30
[project .optional-dependencies ]
27
31
dev = [
28
32
" build ~= 1.0.3" ,
29
33
" filelock ~= 3.12.4" ,
30
- " mypy ~= 1.5 .1" ,
34
+ " mypy ~= 1.7 .1" ,
31
35
" pre-commit ~= 3.4.0" ,
32
36
" pydoc-markdown ~= 4.8.2" ,
33
37
" pytest ~= 7.4.2" ,
@@ -36,7 +40,7 @@ dev = [
36
40
" pytest-timeout ~= 2.2.0" ,
37
41
" pytest-xdist ~= 3.3.1" ,
38
42
" respx ~= 0.20.1" ,
39
- " ruff ~= 0.1.5 " ,
43
+ " ruff ~= 0.1.6 " ,
40
44
" twine ~= 4.0.2" ,
41
45
]
42
46
@@ -63,17 +67,27 @@ select = ["ALL"]
63
67
ignore = [
64
68
" ANN401" , # Dynamically typed expressions (typing.Any) are disallowed in {filename}
65
69
" BLE001" , # Do not catch blind exception
70
+ " C901" , # `{name}` is too complex
66
71
" COM812" , # This rule may cause conflicts when used with the formatter
67
72
" D100" , # Missing docstring in public module
68
73
" D104" , # Missing docstring in public package
69
74
" EM" , # flake8-errmsg
75
+ " G004" , # Logging statement uses f-string
70
76
" ISC001" , # This rule may cause conflicts when used with the formatter
71
77
" FIX" , # flake8-fixme
72
78
" PGH003" , # Use specific rule codes when ignoring type issues
79
+ " PLR0911" , # Too many return statements
73
80
" PLR0913" , # Too many arguments in function definition
81
+ " PLR0915" , # Too many statements
74
82
" PTH" , # flake8-use-pathlib
83
+ " PYI034" , # `__aenter__` methods in classes like `{name}` usually return `self` at runtime
84
+ " PYI036" , # The second argument in `__aexit__` should be annotated with `object` or `BaseException | None`
75
85
" S102" , # Use of `exec` detected
76
86
" S105" , # Possible hardcoded password assigned to
87
+ " S106" , # Possible hardcoded password assigned to argument: "{name}"
88
+ " S301" , # `pickle` and modules that wrap it can be unsafe when used to deserialize untrusted data, possible security issue
89
+ " S303" , # Use of insecure MD2, MD4, MD5, or SHA1 hash function
90
+ " S311" , # Standard pseudo-random generators are not suitable for cryptographic purposes
77
91
" TD002" , # Missing author in TODO; try: `# TODO(<author_name>): ...` or `# TODO @<author_name>: ...
78
92
" TID252" , # Relative imports from parent modules are bannedRuff
79
93
" TRY003" , # Avoid specifying long messages outside the exception class
@@ -97,8 +111,9 @@ indent-style = "space"
97
111
" D" , # Everything from the pydocstyle
98
112
" INP001" , # File {filename} is part of an implicit namespace package, add an __init__.py
99
113
" PLR2004" , # Magic value used in comparison, consider replacing {value} with a constant variable
100
- " T20" , # flake8-print
101
114
" S101" , # Use of assert detected
115
+ " T20" , # flake8-print
116
+ " TRY301" , # Abstract `raise` to an inner function
102
117
]
103
118
104
119
[tool .ruff .lint .flake8-quotes ]
0 commit comments