1- # ########################
2- # PEP 621 configuration #
3- # ########################
4-
51[build-system ]
62requires = [" hatchling" ]
73build-backend = " hatchling.build"
@@ -40,7 +36,7 @@ keywords = [
4036dependencies = [
4137 " apify-client>=1.9.2" ,
4238 " apify-shared>=1.2.1" ,
43- " crawlee~=0.5.1 " ,
39+ " crawlee~=0.5.0 " ,
4440 " cryptography>=42.0.0" ,
4541 " httpx>=0.27.0" ,
4642 " lazy-object-proxy>=1.10.0" ,
@@ -50,7 +46,19 @@ dependencies = [
5046 # https://github.com/apify/apify-sdk-python/issues/325
5147 " websockets>=10.0,<14.0.0" ,
5248]
49+
5350[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 ]
5462dev = [
5563 " build~=1.2.0" ,
5664 " filelock~=3.17.0" ,
@@ -68,27 +76,10 @@ dev = [
6876 " ruff~=0.9.0" ,
6977 " setuptools~=75.8.0" , # setuptools are used by pytest but not explicitly required
7078]
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- # ######################
8479
8580[tool .hatch .build .targets .wheel ]
8681packages = [" src/apify" ]
8782
88- # #####################
89- # Ruff configuration #
90- # #####################
91-
9283[tool .ruff ]
9384line-length = 120
9485include = [" src/**/*.py" , " tests/**/*.py" , " docs/**/*.py" , " website/**/*.py" ]
@@ -185,20 +176,12 @@ known-first-party = ["apify_client", "apify_shared", "crawlee"]
185176[tool .ruff .lint .pylint ]
186177max-branches = 18
187178
188- # #######################
189- # Pytest configuration #
190- # #######################
191-
192179[tool .pytest .ini_options ]
193180addopts = " -ra"
194181asyncio_default_fixture_loop_scope = " function"
195182asyncio_mode = " auto"
196183timeout = 1200
197184
198- # #####################
199- # Mypy configuration #
200- # #####################
201-
202185[tool .mypy ]
203186python_version = " 3.9"
204187plugins = [" pydantic.mypy" ]
@@ -226,25 +209,13 @@ module = [
226209]
227210ignore_missing_imports = true
228211
229- # #############################
230- # BasedPyright configuration #
231- # #############################
232-
233212[tool .basedpyright ]
234213pythonVersion = " 3.9"
235214typeCheckingMode = " standard"
236215include = [" src" , " tests" , " docs" , " website" ]
237216
238- # #########################
239- # Coverage configuration #
240- # #########################
241-
242217[tool .coverage .report ]
243218exclude_lines = [" pragma: no cover" , " if TYPE_CHECKING:" , " assert_never()" ]
244219
245- # #####################
246- # Ipdb configuration #
247- # #####################
248-
249220[tool .ipdb ]
250- context = 7
221+ context = 7
0 commit comments