11[build-system ]
22# jinja2 is required to generate JS and Python rules at build time
33# PyYAML is used to parse fuzzy rules and generate Python/JS code
4- requires = [" hatchling" , " hatch-openzim>=0.2" , " jinja2==3.1.4 " , " PyYAML==6.0.2" ]
4+ requires = [" hatchling" , " hatch-openzim>=0.2" , " jinja2==3.1.5 " , " PyYAML==6.0.2" ]
55build-backend = " hatchling.build"
66
77[project ]
88name = " zimscraperlib"
9- requires-python = " >=3.12 ,<3.13 "
9+ requires-python = " >=3.13 ,<3.14 "
1010description = " Collection of python tools to re-use common code across scrapers"
1111readme = " README.md"
1212dependencies = [
@@ -51,13 +51,13 @@ scripts = [
5151 # jinja2 is required to generate JS and Python rules at build time
5252 # PyYAML is used to parse fuzzy rules and generate Python/JS code
5353 # also update version in build-system above and in build_js.sh
54- " jinja2==3.1.4 " ,
54+ " jinja2==3.1.5 " ,
5555 " PyYAML==6.0.2" ,
5656
5757]
5858lint = [
5959 " black==24.10.0" ,
60- " ruff==0.8 .2" ,
60+ " ruff==0.9 .2" ,
6161]
6262check = [
6363 " pyright==1.1.391" ,
@@ -66,19 +66,19 @@ check = [
6666test = [
6767 " pytest==8.3.4" ,
6868 " pytest-mock==3.14.0" ,
69- " coverage==7.6.9 " ,
69+ " coverage==7.6.10 " ,
7070]
7171docs = [
7272 " mkdocs==1.6.1" ,
7373 " mkdocstrings[python]==0.27.0" ,
74- " mkdocs-material==9.5.44 " ,
75- " pymdown-extensions==10.12 " ,
74+ " mkdocs-material==9.5.50 " ,
75+ " pymdown-extensions==10.14 " ,
7676 " mkdocs-gen-files==0.5.0" ,
7777 " mkdocs-literate-nav==0.6.1" ,
7878 " mkdocs-include-markdown-plugin==7.1.2" ,
7979]
8080dev = [
81- " ipython==8.30 .0" ,
81+ " ipython==8.31 .0" ,
8282 " pre-commit==4.0.1" ,
8383 " zimscraperlib[scripts]" ,
8484 " zimscraperlib[lint]" ,
@@ -155,10 +155,10 @@ build = "inv docs-build --args '{args}'"
155155
156156[tool .black ]
157157line-length = 88
158- target-version = [' py312 ' ]
158+ target-version = [' py313 ' ]
159159
160160[tool .ruff ]
161- target-version = " py312 "
161+ target-version = " py313 "
162162line-length = 88
163163src = [" src" , " contrib" ]
164164
@@ -221,6 +221,8 @@ select = [
221221 " YTT" , # flake8-2020
222222]
223223ignore = [
224+ # Allow to shadow Python standard-library modules
225+ " A005" ,
224226 # Allow non-abstract empty methods in abstract base classes
225227 " B027" ,
226228 # Remove flake8-errmsg since we consider they bloat the code and provide limited value
@@ -289,7 +291,7 @@ exclude_lines = [
289291include = [" contrib" , " src" , " tests" , " tasks.py" ]
290292exclude = [" .env/**" , " .venv/**" ]
291293extraPaths = [" src" ]
292- pythonVersion = " 3.12 "
294+ pythonVersion = " 3.13 "
293295typeCheckingMode =" strict"
294296disableBytesTypePromotions = true
295297
0 commit comments