xref: /qemu/python/tests/minreqs.txt (revision fc8da54ec43cf6302ac496d8fe54832812954679)
16832189fSJohn Snow# This file lists the ***oldest possible dependencies*** needed to run
2d64db833SThomas Huth# "make check" successfully under ***Python 3.9***. It is used primarily
36832189fSJohn Snow# by GitLab CI to ensure that our stated minimum versions in setup.cfg
46832189fSJohn Snow# are truthful and regularly validated.
56832189fSJohn Snow#
66832189fSJohn Snow# This file should not contain any dependencies that are not expressed
76832189fSJohn Snow# by the [devel] section of setup.cfg, except for transitive
86832189fSJohn Snow# dependencies which must be enumerated here explicitly to eliminate
96832189fSJohn Snow# dependency resolution ambiguity.
106832189fSJohn Snow#
116832189fSJohn Snow# When adding new dependencies, pin the very oldest non-yanked version
126832189fSJohn Snow# on PyPI that allows the test suite to pass.
136832189fSJohn Snow
14*65aa0a17SJohn Snow# For some reason, the presence of packaging==14.0 below requires us to
15*65aa0a17SJohn Snow# also pin setuptools to version 70 or below. Otherwise, the
16*65aa0a17SJohn Snow# installation of the QEMU package itself fails, failing to find
17*65aa0a17SJohn Snow# setuptools.
18*65aa0a17SJohn Snowsetuptools<=70
19*65aa0a17SJohn Snow
20*65aa0a17SJohn Snow# Dependencies for qapidoc/qapi_domain et al
21*65aa0a17SJohn Snowsphinx==3.4.3
22*65aa0a17SJohn Snow
236832189fSJohn Snow# Dependencies for the TUI addon (Required for successful linting)
246832189fSJohn Snowurwid==2.1.2
256832189fSJohn Snowurwid-readline==0.13
266832189fSJohn SnowPygments==2.9.0
276832189fSJohn Snow
28c5538eedSJohn Snow# Dependencies for mkvenv
29c5538eedSJohn Snowdistlib==0.3.6
30c5538eedSJohn Snow
316832189fSJohn Snow# Dependencies for FUSE support for qom-fuse
326832189fSJohn Snowfusepy==2.0.4
336832189fSJohn Snow
346832189fSJohn Snow# Test-runners, utilities, etc.
356832189fSJohn Snowavocado-framework==90.0
366832189fSJohn Snow
376832189fSJohn Snow# Linters
387b4b98c4SPaolo Bonziniflake8==5.0.4
396832189fSJohn Snowisort==5.1.2
403d7b8974SPaolo Bonzinimypy==1.4.0
417b4b98c4SPaolo Bonzinipylint==2.17.3
426832189fSJohn Snow
436832189fSJohn Snow# Transitive flake8 dependencies
447b4b98c4SPaolo Bonzinimccabe==0.7.0
457b4b98c4SPaolo Bonzinipycodestyle==2.9.1
467b4b98c4SPaolo Bonzinipyflakes==2.5.0
476832189fSJohn Snow
486832189fSJohn Snow# Transitive mypy dependencies
493d7b8974SPaolo Bonzinimypy-extensions==1.0.0
504b77e5d7SJohn Snowtomli==1.1.0
513d7b8974SPaolo Bonzinityping-extensions==4.7.1
526832189fSJohn Snow
536832189fSJohn Snow# Transitive pylint dependencies
547b4b98c4SPaolo Bonziniastroid==2.15.4
554b77e5d7SJohn Snowdill==0.2
566832189fSJohn Snowlazy-object-proxy==1.4.0
574b77e5d7SJohn Snowplatformdirs==2.2.0
586832189fSJohn Snowtoml==0.10.0
594b77e5d7SJohn Snowtomlkit==0.10.1
603d7b8974SPaolo Bonziniwrapt==1.14.0
61*65aa0a17SJohn Snow
62*65aa0a17SJohn Snow# Transitive sphinx dependencies
63*65aa0a17SJohn SnowJinja2==2.7
64*65aa0a17SJohn SnowMarkupSafe==1.1.0
65*65aa0a17SJohn Snowalabaster==0.7.1
66*65aa0a17SJohn Snowbabel==1.3
67*65aa0a17SJohn Snowdocutils==0.12
68*65aa0a17SJohn Snowimagesize==0.5.0
69*65aa0a17SJohn Snowpackaging==14.0
70*65aa0a17SJohn Snowpytz==2011b0
71*65aa0a17SJohn Snowrequests==2.5.0
72*65aa0a17SJohn Snowsnowballstemmer==1.1
73*65aa0a17SJohn Snowsphinxcontrib-applehelp==1.0.0
74*65aa0a17SJohn Snowsphinxcontrib-devhelp==1.0.0
75*65aa0a17SJohn Snowsphinxcontrib-htmlhelp==1.0.0
76*65aa0a17SJohn Snowsphinxcontrib-jsmath==1.0.0
77*65aa0a17SJohn Snowsphinxcontrib-qthelp==1.0.0
78*65aa0a17SJohn Snowsphinxcontrib-serializinghtml==1.0.0
79