History

scripts: test_doc_build.py: improve dependency list

Change the dependency list to ensure that: - all docutils versions are covered; - provide an explanation about the dependencies; - set a better minimal requirement for 3.4.3.

Mauro Carvalho Chehab committed 1 year ago

Commit 792bf011 parent 3fa60d21 file · +50 −18Browse files

Unified · Split

scripts/test_doc_build.py+50−18
@@ -37,70 +37,102 @@ PYTHON_VER_CHANGES = {(8, 0, 2): PYTHON} · 36 unmodified lines
3737
3838 # Sphinx versions to be installed and their incremental requirements
3939 SPHINX_REQUIREMENTS = {
40+ # Oldest versions we support for each package required by Sphinx 3.4.3
4041 (3, 4, 3): {
42+ "docutils": "0.16",
43+ "alabaster": "0.7.12",
44+ "babel": "2.8.0",
45+ "certifi": "2020.6.20",
46+ "docutils": "0.16",
47+ "idna": "2.10",
48+ "imagesize": "1.2.0",
49+ "Jinja2": "2.11.2",
50+ "MarkupSafe": "1.1.1",
51+ "packaging": "20.4",
52+ "Pygments": "2.6.1",
53+ "PyYAML": "5.1",
54+ "requests": "2.24.0",
55+ "snowballstemmer": "2.0.0",
56+ "sphinxcontrib-applehelp": "1.0.2",
57+ "sphinxcontrib-devhelp": "1.0.2",
58+ "sphinxcontrib-htmlhelp": "1.0.3",
59+ "sphinxcontrib-jsmath": "1.0.1",
60+ "sphinxcontrib-qthelp": "1.0.3",
61+ "sphinxcontrib-serializinghtml": "1.1.4",
62+ "urllib3": "1.25.9",
63+ },
64+
65+ # Update package dependencies to a more modern base. The goal here
66+ # is to avoid to many incremental changes for the next entries
67+ (3, 5, 4): {
4168 "alabaster": "0.7.13",
4269 "babel": "2.17.0",
4370 "certifi": "2025.6.15",
44− "charset-normalizer": "3.4.2",
45− "docutils": "0.15",
4671 "idna": "3.10",
4772 "imagesize": "1.4.1",
4873 "Jinja2": "3.0.3",
4974 "MarkupSafe": "2.0",
5075 "packaging": "25.0",
5176 "Pygments": "2.19.1",
52− "PyYAML": "5.1",
5377 "requests": "2.32.4",
5478 "snowballstemmer": "3.0.1",
5579 "sphinxcontrib-applehelp": "1.0.4",
56− "sphinxcontrib-devhelp": "1.0.2",
5780 "sphinxcontrib-htmlhelp": "2.0.1",
58− "sphinxcontrib-jsmath": "1.0.1",
59− "sphinxcontrib-qthelp": "1.0.3",
6081 "sphinxcontrib-serializinghtml": "1.1.5",
61− "urllib3": "2.4.0",
6282 },
63− (3, 5, 4): {},
83+
84+ # Starting from here, ensure all docutils versions are covered with
85+ # supported Sphinx versions. Other packages are upgraded only when
86+ # required by pip
6487 (4, 0, 3): {
65− "docutils": "0.17.1",
88+ "docutils": "0.17",
6689 "PyYAML": "5.1",
6790 },
68− (4, 1, 2): {},
69− (4, 3, 2): {},
91+ (4, 1, 2): {
92+ },
93+ (4, 3, 2): {
94+ },
7095 (4, 4, 0): {},
7196 (4, 5, 0): {},
7297 (5, 0, 2): {},
7398 (5, 1, 1): {},
7499 (5, 2, 3): {
100+ "docutils": "0.17.1",
75101 "Jinja2": "3.1.2",
76102 "MarkupSafe": "2.0",
77103 "PyYAML": "5.3.1",
78104 },
79− (5, 3, 0): {
80− "docutils": "0.18.1",
81− "PyYAML": "5.3.1",
105+ (5, 3, 0): {},
106+ (6, 0, 1): {
107+ "docutils": "0.18",
82108 },
83− (6, 0, 1): {},
84109 (6, 1, 3): {},
85110 (6, 2, 1): {
111+ "docutils": "0.18.1",
86112 "PyYAML": "5.4.1",
87113 },
88− (7, 0, 1): {},
114+ (7, 0, 1): {
115+ },
89116 (7, 1, 2): {},
90117 (7, 2, 3): {
118+ "docutils": "0.19",
91119 "PyYAML": "6.0.1",
92120 "sphinxcontrib-serializinghtml": "1.1.9",
93121 },
94122 (7, 3, 7): {
123+ "docutils": "0.20",
95124 "alabaster": "0.7.14",
96125 "PyYAML": "6.0.1",
97126 },
98127 (7, 4, 7): {
99− "docutils": "0.20",
128+ "docutils": "0.21",
100129 "PyYAML": "6.0.1",
101130 },
102− (8, 0, 2): {},
131+ (8, 0, 2): {
132+ "docutils": "0.21.1",
133+ },
103134 (8, 1, 3): {
135+ "docutils": "0.21.2",
104136 "PyYAML": "6.0.1",
105137 "sphinxcontrib-applehelp": "1.0.7",
106138 "sphinxcontrib-devhelp": "1.0.6",