argcomplete<4,>=3.6.3
imagesize<2.1,>=2.0.0
lunr[languages]<0.9,>=0.8.0
markdownify<1.3,>=1.2.2
Mastodon.py<2.2,>=2.1.4
orjson<3.12,>=3.11.4
packaging<27,>=25
rich_argparse<1.8,>=1.7.2
python-frontmatter<2,>=1.1.0
requests<3,>=2.32.5

[:python_version < "3.11"]
typing-extensions<5,>=4.15

[all]
tinify<2,>=1.6
Pillow<13,>=10.0.1

[dev]
black
flake8>=7.1.0
flake8-bugbear<26,>=23
flake8-builtins>=2
flake8-docstrings>=1.6
flake8-eradicate>=1
flake8-isort>=5
Flake8-pyproject>=1.2.3
pre-commit>=4

[doc]
furo==2025.*
matplotlib<4,>=3.8.2
myst-parser[linkify]>=2
sphinx-argparse-cli>=1
sphinx-autobuild>=2024
sphinx-autodoc-typehints<4
sphinx-copybutton>=0.5.2
sphinxcontrib-mermaid>=1.0.0
sphinxext-opengraph>=0.13.0
sphinx-sitemap>=2.4.0

[img-local]
Pillow<13,>=10.0.1

[img-remote]
tinify<2,>=1.6

[packaging]
build<2,>=1.2.2
pyinstaller<6.20,>=6.14.2
pyinstaller-hooks-contrib<2027,>=2025

[packaging:sys_platform == "linux"]
distro==1.9.*

[packaging:sys_platform == "win32"]
pypiwin32==223

[test]
Pillow<13,>=10.2
pytest-cov>=4
pytest-retry>=1.6
validators<0.36,>=0.20
