requests>=2.25.0
beautifulsoup4>=4.9.0
playwright>=1.52.0
jupytext>=1.17.1
pillow>=11.2.1
dspy-ai>=2.6.24
pydantic>=2.11.5
pdfplumber>=0.11.6
python-pptx>=1.0.2
ipykernel>=6.29.5

[all]
pandas>=1.3.0
Pillow>=8.0.0
pdfplumber>=0.7.0
python-pptx>=0.6.21
python-docx>=0.8.11
openpyxl>=3.0.9
python-magic>=0.4.27
mammoth>=1.6.0
odfpy>=1.4.1
pillow-heif>=0.22.0
pydub>=0.25.1
SpeechRecognition>=3.10.0
markitdown[all]>=0.1.1
pytesseract>=0.3.10
pypdf>=5.0.0
pypdfium2>=4.26.0
playwright>=1.43.0
selenium>=4.15.0

[browser]
playwright>=1.43.0
selenium>=4.15.0

[common]
pandas>=2.0.0
Pillow>=10.0.0
pdfplumber>=0.10.0
python-pptx>=0.6.0
python-docx>=1.1.0
openpyxl>=3.1.0
pypdfium2>=4.0.0

[dev]
pytest>=8.0.0
pytest-randomly>=3.15.0
pytest-cov>=4.0.0
black>=24.0.0
flake8>=7.0.0
mypy>=1.8.0
pre-commit>=3.6.0

[docs]
mystmd>=1.2.0
jupyter>=1.0.0
jupytext>=1.16.0
sphinx>=7.0.0
sphinx-autodoc2>=0.5.0

[extended]
python-magic>=0.4.27
mammoth>=1.6.0
odfpy>=1.4.1
pillow-heif>=0.22.0
pydub>=0.25.1
SpeechRecognition>=3.10.0
markitdown[all]>=0.1.1
pytesseract>=0.3.10

[office]
python-pptx>=0.6.0
python-docx>=1.1.0
openpyxl>=3.1.0

[pdf]
pdfplumber>=0.7.0
pypdf>=5.0.0
pypdfium2>=4.26.0

[test]
pytest>=8.0.0
pytest-randomly>=3.15.0
pytest-cov>=4.0.0
tox>=4.0.0
coverage[toml]>=7.4.0
