1
- # ########################
2
- # PEP 621 configuration #
3
- # ########################
4
-
5
1
[build-system ]
6
2
requires = [" hatchling" ]
7
3
build-backend = " hatchling.build"
@@ -40,7 +36,7 @@ keywords = [
40
36
dependencies = [
41
37
" apify-client>=1.9.2" ,
42
38
" apify-shared>=1.2.1" ,
43
- " crawlee~=0.5.1 " ,
39
+ " crawlee~=0.5.0 " ,
44
40
" cryptography>=42.0.0" ,
45
41
" httpx>=0.27.0" ,
46
42
" lazy-object-proxy>=1.10.0" ,
@@ -50,7 +46,19 @@ dependencies = [
50
46
# https://github.com/apify/apify-sdk-python/issues/325
51
47
" websockets>=10.0,<14.0.0" ,
52
48
]
49
+
53
50
[project .optional-dependencies ]
51
+ scrapy = [" scrapy>=2.11.0" ]
52
+
53
+ [project .urls ]
54
+ "Homepage" = " https://docs.apify.com/sdk/python/"
55
+ "Apify homepage" = " https://apify.com"
56
+ "Changelog" = " https://docs.apify.com/sdk/python/docs/changelog"
57
+ "Documentation" = " https://docs.apify.com/sdk/python/"
58
+ "Issue tracker" = " https://github.com/apify/apify-sdk-python/issues"
59
+ "Repository" = " https://github.com/apify/apify-sdk-python"
60
+
61
+ [dependency-groups ]
54
62
dev = [
55
63
" build~=1.2.0" ,
56
64
" filelock~=3.17.0" ,
@@ -68,27 +76,10 @@ dev = [
68
76
" ruff~=0.9.0" ,
69
77
" setuptools~=75.8.0" , # setuptools are used by pytest but not explicitly required
70
78
]
71
- scrapy = [" scrapy>=2.11.0" ]
72
-
73
- [project .urls ]
74
- homepage = " https://docs.apify.com/sdk/python/"
75
- apify_homepage = " https://apify.com"
76
- changelog = " https://docs.apify.com/sdk/python/docs/changelog"
77
- documentation = " https://docs.apify.com/sdk/python/"
78
- issue_tracker = " https://github.com/apify/apify-sdk-python/issues"
79
- repository = " https://github.com/apify/apify-sdk-python"
80
-
81
- # ######################
82
- # Hatch configuration #
83
- # ######################
84
79
85
80
[tool .hatch .build .targets .wheel ]
86
81
packages = [" src/apify" ]
87
82
88
- # #####################
89
- # Ruff configuration #
90
- # #####################
91
-
92
83
[tool .ruff ]
93
84
line-length = 120
94
85
include = [" src/**/*.py" , " tests/**/*.py" , " docs/**/*.py" , " website/**/*.py" ]
@@ -185,20 +176,12 @@ known-first-party = ["apify_client", "apify_shared", "crawlee"]
185
176
[tool .ruff .lint .pylint ]
186
177
max-branches = 18
187
178
188
- # #######################
189
- # Pytest configuration #
190
- # #######################
191
-
192
179
[tool .pytest .ini_options ]
193
180
addopts = " -ra"
194
181
asyncio_default_fixture_loop_scope = " function"
195
182
asyncio_mode = " auto"
196
183
timeout = 1200
197
184
198
- # #####################
199
- # Mypy configuration #
200
- # #####################
201
-
202
185
[tool .mypy ]
203
186
python_version = " 3.9"
204
187
plugins = [" pydantic.mypy" ]
@@ -226,25 +209,13 @@ module = [
226
209
]
227
210
ignore_missing_imports = true
228
211
229
- # #############################
230
- # BasedPyright configuration #
231
- # #############################
232
-
233
212
[tool .basedpyright ]
234
213
pythonVersion = " 3.9"
235
214
typeCheckingMode = " standard"
236
215
include = [" src" , " tests" , " docs" , " website" ]
237
216
238
- # #########################
239
- # Coverage configuration #
240
- # #########################
241
-
242
217
[tool .coverage .report ]
243
218
exclude_lines = [" pragma: no cover" , " if TYPE_CHECKING:" , " assert_never()" ]
244
219
245
- # #####################
246
- # Ipdb configuration #
247
- # #####################
248
-
249
220
[tool .ipdb ]
250
- context = 7
221
+ context = 7
0 commit comments