# After editing this file, you MUST afterward run # /tools/update-locked-requirements to update requirements/dev.txt. # See requirements/README.md for more detail. -r prod.in -r docs.in # moto s3 mock moto[s3] # For tools/run-dev aiohttp # Needed for documentation links test Scrapy # Needed to compute test coverage coverage # fake for LDAP testing fakeldap # For testing mock http requests responses # For doing highly usable Python profiling line-profiler # Python reformatter black # Python linter ruff # Needed for watching file changes pyinotify pyasyncore # https://github.com/seb-m/pyinotify/issues/204 # Needed to run tests in parallel tblib # For linting Git commit messages gitlint-core # Needed for visualising cProfile reports snakeviz # Needed for creating DigitalOcean droplets python-digitalocean # Needed for updating the locked pip dependencies pip-tools<6.3.0 # https://github.com/jazzband/pip-tools/pull/1455 breaks our hack for installing specific commits from Git # zulip's linting framework - zulint https://github.com/zulip/zulint/archive/417b4e4971fdd5ca8e84847f1391b657b188631a.zip#egg=zulint==1.0.0+git -r mypy.in # Needed for tools/check-thirdparty python-debian # Pattern-based lint tool semgrep<1.80.0 # https://github.com/semgrep/semgrep/issues/10408 # Contains Pysa, a security-focused static analyzer pyre-check # For sorting versions when uploading releases natsort # For spell check linter codespell # For mocking time time-machine