diff --git a/HISTORY.rst b/HISTORY.rst index 9538dd108b..3b3cdd82fa 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -3,6 +3,7 @@ - Backport transaction handling to document model events. - Update example LDAP authentication settings file. - Update FAQ entry about the LDAP file. +- Automate documentation building dependencies. 3.2.10 (2019-11-19) =================== diff --git a/Makefile b/Makefile index 194df3a46f..110d56b5a8 100644 --- a/Makefile +++ b/Makefile @@ -240,6 +240,7 @@ generate-setup: generate-requirements generate-requirements: ## Generate all requirements files from the project depedency declarations. @./manage.py generaterequirements build > requirements/build.txt @./manage.py generaterequirements development > requirements/development.txt + @./manage.py generaterequirements documentation > requirements/documentation.txt @./manage.py generaterequirements testing > requirements/testing-base.txt @./manage.py generaterequirements production --exclude=django > requirements/base.txt @./manage.py generaterequirements production --only=django > requirements/common.txt diff --git a/mayan/apps/common/dependencies.py b/mayan/apps/common/dependencies.py index 8a6e811c62..40bdfeb05d 100644 --- a/mayan/apps/common/dependencies.py +++ b/mayan/apps/common/dependencies.py @@ -3,8 +3,8 @@ from __future__ import absolute_import, unicode_literals from django.utils.translation import ugettext_lazy as _ from mayan.apps.dependencies.classes import ( - environment_build, environment_development, environment_testing, - PythonDependency + environment_build, environment_development, environment_documentation, + environment_testing, PythonDependency ) PythonDependency( @@ -289,6 +289,8 @@ PythonDependency( module=__name__, name='whitenoise', version_string='==4.1.4' ) +# Development + PythonDependency( module=__name__, environment=environment_development, name='Werkzeug', version_string='==0.15.4' @@ -330,6 +332,8 @@ PythonDependency( module=__name__, name='transifex-client', version_string='==0.13.6' ) +# Testing + PythonDependency( environment=environment_testing, module=__name__, name='codecov', version_string='==2.0.15' @@ -356,6 +360,8 @@ PythonDependency( version_string='==5.6.3' ) +# Build + PythonDependency( environment=environment_build, module=__name__, name='twine', version_string='==1.9.1' @@ -364,3 +370,36 @@ PythonDependency( environment=environment_build, module=__name__, name='wheel', version_string='==0.30.0' ) + +# Documentation + +PythonDependency( + environment=environment_documentation, module=__name__, name='Sphinx', + version_string='==1.8.5' +) +PythonDependency( + environment=environment_documentation, module=__name__, + name='sphinx-autobuild', + version_string='==0.7.1' +) +PythonDependency( + environment=environment_documentation, module=__name__, + name='sphinx_rtd_theme', + version_string='==0.4.3' +) +PythonDependency( + environment=environment_documentation, module=__name__, + name='sphinxcontrib-blockdiag', + version_string='==1.5.5' +) +PythonDependency( + environment=environment_documentation, module=__name__, + name='sphinxcontrib-spelling', + version_string='==4.2.1' +) +# sphinx-autobuild has a dependency on Tornado, +# but Tornado 6.0 dropped support for Python 2.7 +PythonDependency( + environment=environment_documentation, module=__name__, name='tornado', + version_string='<6.0' +) diff --git a/mayan/apps/dependencies/classes.py b/mayan/apps/dependencies/classes.py index bb2173546a..cc62c77935 100644 --- a/mayan/apps/dependencies/classes.py +++ b/mayan/apps/dependencies/classes.py @@ -77,6 +77,12 @@ environment_development = DependencyEnvironment( 'can ignore missing dependencies under this environment.' ), label=_('Development'), name='development' ) +environment_documentation = DependencyEnvironment( + help_text=_( + 'Environment used for building the documentation. End users ' + 'can ignore missing dependencies under this environment.' + ), label=_('Documentation'), name='documentation' +) environment_production = DependencyEnvironment( help_text=_( 'Normal environment for end users. A missing dependency under this ' diff --git a/requirements/documentation.txt b/requirements/documentation.txt index 2718faf654..0d2604016a 100644 --- a/requirements/documentation.txt +++ b/requirements/documentation.txt @@ -1,10 +1,6 @@ Sphinx==1.8.5 - sphinx-autobuild==0.7.1 sphinx_rtd_theme==0.4.3 sphinxcontrib-blockdiag==1.5.5 sphinxcontrib-spelling==4.2.1 - -# sphinx-autobuild has a dependency on Tornado, -# but Tornado 6.0 dropped support for Python 2.7 tornado<6.0