# HG changeset patch # User Andrew Halberstadt # Date 1518446172 18000 # Node ID 391bc7cd19b96f8c67392378f13ea112ad2ca733 # Parent a99ad623def2d0822ff37c23bdd8175f453c8a15 Bug 1437484 - Pin and hash all requirements for |mach doc|, r=gps Previously we weren't explicitly installing sphinx. Instead, the 'sphinx-js' package had a dependency on 'sphinx<2.0'. This caused errors when sphinx released their backwards incompatible version 1.7. This patch pins sphinx==1.6.7 and adds all other dependencies to the same requirements.txt (with hashes). Upgrading to sphinx==1.7 will happen in a follow-up. MozReview-Commit-ID: 28fKI7T4vfa diff --git a/tools/docs/mach_commands.py b/tools/docs/mach_commands.py --- a/tools/docs/mach_commands.py +++ b/tools/docs/mach_commands.py @@ -14,16 +14,18 @@ from mach.decorators import ( CommandProvider, ) import which import mozhttpd from mozbuild.base import MachCommandBase +here = os.path.abspath(os.path.dirname(__file__)) + @CommandProvider class Documentation(MachCommandBase): """Helps manage in-tree documentation.""" @Command('doc', category='devenv', description='Generate and display documentation from the tree.') @CommandArgument('what', nargs='*', metavar='DIRECTORY [, DIRECTORY]', @@ -43,19 +45,17 @@ class Documentation(MachCommandBase): def build_docs(self, what=None, format=None, outdir=None, auto_open=True, http=None, archive=False): try: jsdoc = which.which('jsdoc') except which.WhichError: return die('jsdoc not found - please install from npm.') self._activate_virtualenv() - self.virtualenv_manager.install_pip_package('sphinx_rtd_theme==0.2.4') - self.virtualenv_manager.install_pip_package('sphinx-js==2.1') - self.virtualenv_manager.install_pip_package('recommonmark==0.4.0') + self.virtualenv_manager.install_pip_requirements(os.path.join(here, 'requirements.txt')) import sphinx import webbrowser import moztreedocs if not outdir: outdir = os.path.join(self.topobjdir, 'docs') if not what: diff --git a/tools/docs/requirements.txt b/tools/docs/requirements.txt new file mode 100644 --- /dev/null +++ b/tools/docs/requirements.txt @@ -0,0 +1,70 @@ +docutils==0.14 \ + --hash=sha256:7a4bd47eaf6596e1295ecb11361139febe29b084a87bf005bf899f9a42edc3c6 \ + --hash=sha256:02aec4bd92ab067f6ff27a38a38a41173bf01bed8f89157768c1573f53e474a6 \ + --hash=sha256:51e64ef2ebfb29cae1faa133b3710143496eca21c530f3f71424d77687764274 +Jinja2==2.10 \ + --hash=sha256:74c935a1b8bb9a3947c50a54766a969d4846290e1e788ea44c1392163723c3bd \ + --hash=sha256:f84be1bb0040caca4cea721fcbbbbd61f9be9464ca236387158b0feea01914a4 +packaging==16.8 \ + --hash=sha256:99276dc6e3a7851f32027a68f1095cd3f77c148091b092ea867a351811cfe388 \ + --hash=sha256:5d50835fdf0a7edf0b55e311b7c887786504efea1177abd7e69329a8e5ea619e +imagesize==0.7.1 \ + --hash=sha256:6ebdc9e0ad188f9d1b2cdd9bc59cbe42bf931875e829e7a595e6b3abdc05cdfb \ + --hash=sha256:0ab2c62b87987e3252f89d30b7cedbec12a01af9274af9ffa48108f2c13c6062 +six==1.11.0 \ + --hash=sha256:832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb \ + --hash=sha256:70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9 +alabaster==0.7.10 \ + --hash=sha256:2eef172f44e8d301d25aff8068fddd65f767a3f04b5f15b0f4922f113aa1c732 \ + --hash=sha256:37cdcb9e9954ed60912ebc1ca12a9d12178c26637abdf124e3cde2341c257fe0 +snowballstemmer==1.2.1 \ + --hash=sha256:9f3bcd3c401c3e862ec0ebe6d2c069ebc012ce142cce209c098ccb5b09136e89 \ + --hash=sha256:919f26a68b2c17a7634da993d91339e288964f93c274f1343e3bbbe2096e1128 +Pygments==2.2.0 \ + --hash=sha256:78f3f434bcc5d6ee09020f92ba487f95ba50f1e3ef83ae96b9d5ffa1bab25c5d \ + --hash=sha256:dbae1046def0efb574852fab9e90209b23f556367b5a320c0bcb871c77c3e8cc +sphinxcontrib-websupport==1.0.1 \ + --hash=sha256:7a85961326aa3a400cd4ad3c816d70ed6f7c740acd7ce5d78cd0a67825072eb9 \ + --hash=sha256:f4932e95869599b89bf4f80fc3989132d83c9faa5bf633e7b5e0c25dffb75da2 +typing==3.6.4 \ + --hash=sha256:b2c689d54e1144bbcfd191b0832980a21c2dbcf7b5ff7a66248a60c90e951eb8 \ + --hash=sha256:3a887b021a77b292e151afb75323dea88a7bc1b3dfa92176cff8e44c8b68bddf \ + --hash=sha256:d400a9344254803a2368533e4533a4200d21eb7b6b729c173bc38201a74db3f2 +Babel==2.5.3 \ + --hash=sha256:ad209a68d7162c4cff4b29cdebe3dec4cef75492df501b0049a9433c96ce6f80 \ + --hash=sha256:8ce4cb6fdd4393edd323227cba3a077bceb2a6ce5201c902c65e730046f41f14 +MarkupSafe==1.0 \ + --hash=sha256:a6be69091dac236ea9c6bc7d012beab42010fa914c459791d627dad4910eb665 +pyparsing==2.2.0 \ + --hash=sha256:fee43f17a9c4087e7ed1605bd6df994c6173c1e977d7ade7b651292fab2bd010 \ + --hash=sha256:0832bcf47acd283788593e7a0f542407bd9550a55a8a8435214a1960e04bcb04 \ + --hash=sha256:9e8143a3e15c13713506886badd96ca4b579a87fbdf49e550dbfc057d6cb218e \ + --hash=sha256:281683241b25fe9b80ec9d66017485f6deff1af5cde372469134b56ca8447a07 \ + --hash=sha256:b8b3117ed9bdf45e14dcc89345ce638ec7e0e29b2b579fa1ecf32ce45ebac8a5 \ + --hash=sha256:8f1e18d3fd36c6795bb7e02a39fd05c611ffc2596c1e0d995d34d67630426c18 \ + --hash=sha256:e4d45427c6e20a59bf4f88c639dcc03ce30d193112047f94012102f235853a58 +pytz==2018.3 \ + --hash=sha256:ed6509d9af298b7995d69a440e2822288f2eca1681b8cce37673dbb10091e5fe \ + --hash=sha256:f93ddcdd6342f94cea379c73cddb5724e0d6d0a1c91c9bdef364dc0368ba4fda \ + --hash=sha256:61242a9abc626379574a166dc0e96a66cd7c3b27fc10868003fa210be4bff1c9 \ + --hash=sha256:ba18e6a243b3625513d85239b3e49055a2f0318466e0b8a92b8fb8ca7ccdf55f \ + --hash=sha256:07edfc3d4d2705a20a6e99d97f0c4b61c800b8232dc1c04d87e8554f130148dd \ + --hash=sha256:3a47ff71597f821cd84a162e71593004286e5be07a340fd462f0d33a760782b5 \ + --hash=sha256:5bd55c744e6feaa4d599a6cbd8228b4f8f9ba96de2c38d56f08e534b3c9edf0d \ + --hash=sha256:887ab5e5b32e4d0c86efddd3d055c1f363cbaa583beb8da5e22d2fa2f64d51ef \ + --hash=sha256:410bcd1d6409026fbaa65d9ed33bf6dd8b1e94a499e32168acfc7b332e4095c0 +Sphinx==1.6.7 \ + --hash=sha256:d5b91b4dad56ffc9f19425ebaa7bc23290a0a2e9035781d5bc54822384663277 \ + --hash=sha256:832bed0dc6099c2abca957d90ff55bc1a6ec4425c13fc144adbae68a970e3775 +sphinx_rtd_theme==0.2.4 \ + --hash=sha256:62ee4752716e698bad7de8a18906f42d33664128eea06c46b718fc7fbd1a9f5c \ + --hash=sha256:2df74b8ff6fae6965c527e97cca6c6c944886aae474b490e17f92adfbe843417 +parsimonious==0.7.0 \ + --hash=sha256:396d424f64f834f9463e81ba79a331661507a21f1ed7b644f7f6a744006fd938 +sphinx-js==2.1 \ + --hash=sha256:8c12b2b7ccc6941cbc7c70e4fada903e2947376b48ce07cbb72c72d88f0eef1e +CommonMark==0.5.4 \ + --hash=sha256:34d73ec8085923c023930dfc0bcd1c4286e28a2a82de094bb72fabcc0281cbe5 +recommonmark==0.4.0 \ + --hash=sha256:cd8bf902e469dae94d00367a8197fb7b81fcabc9cfb79d520e0d22d0fbeaa8b7 \ + --hash=sha256:6e29c723abcf5533842376d87c4589e62923ecb6002a8e059eb608345ddaff9d