diff --git a/docs/conf.py b/docs/conf.py index 7f7ac44c..05376dbe 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -15,8 +15,8 @@ import re import sys from subprocess import check_call - -import edx_theme +from datetime import datetime +import sphinx_book_theme def get_version(*file_paths): @@ -65,7 +65,6 @@ def get_version(*file_paths): # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = [ - 'edx_theme', 'sphinx.ext.autodoc', 'sphinx.ext.doctest', 'sphinx.ext.intersphinx', @@ -96,8 +95,8 @@ def get_version(*file_paths): # General information about the project. project = 'commerce_coordinator' -copyright = edx_theme.COPYRIGHT # pylint: disable=redefined-builtin -author = edx_theme.AUTHOR +copyright = f'{datetime.now().year}, edX LLC.' # pylint: disable=redefined-builtin +author = "edX LLC." project_title = 'commerce_coordinator' documentation_title = f"{project_title}" @@ -191,16 +190,48 @@ def get_version(*file_paths): # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. -html_theme = 'edx_theme' +html_theme = 'sphinx_book_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. # -# html_theme_options = {} +html_theme_options = { + "repository_url": "https://github.com/edx/commerce-coordinator", + "repository_branch": "main", + "path_to_docs": "docs/", + "use_repository_button": True, + "use_issues_button": True, + "use_edit_page_button": True, + # Please don't change unless you know what you're doing. + "extra_footer": """ + + Creative Commons License + +
+ These works by + edX LLC + are licensed under a + Creative Commons Attribution-ShareAlike 4.0 International License. + """ +} + +html_logo = "https://logos.openedx.org/open-edx-logo-color.png" +html_favicon = "https://logos.openedx.org/open-edx-favicon.ico" -# Add any paths that contain custom themes here, relative to this directory. -html_theme_path = [edx_theme.get_html_theme_path()] +if not os.environ.get('DJANGO_SETTINGS_MODULE'): + os.environ['DJANGO_SETTINGS_MODULE'] = 'test_utils.test_settings' # The name for this set of Sphinx documents. # " v documentation" by default. diff --git a/requirements/doc.in b/requirements/doc.in index 5528b8ef..21212f14 100644 --- a/requirements/doc.in +++ b/requirements/doc.in @@ -5,7 +5,7 @@ -r test.txt # Core and testing dependencies for this package doc8 # reStructuredText style checker -edx_sphinx_theme # edX theme for Sphinx output +sphinx_book_theme # edX theme for Sphinx output twine # Validates README.rst for usage on PyPI build # Needed to build the wheel for twine README check Sphinx # Documentation builder diff --git a/requirements/doc.txt b/requirements/doc.txt index 33628e8c..c6475e58 100644 --- a/requirements/doc.txt +++ b/requirements/doc.txt @@ -2,8 +2,10 @@ # This file is autogenerated by pip-compile with Python 3.8 # by the following command: # -# make upgrade +# pip-compile --output-file=requirements/doc.txt requirements/doc.in # +accessible-pygments==0.0.4 + # via pydata-sphinx-theme alabaster==0.7.13 # via sphinx amqp==5.2.0 @@ -27,7 +29,9 @@ async-timeout==4.0.3 attrs==23.2.0 # via -r requirements/test.txt babel==2.15.0 - # via sphinx + # via + # pydata-sphinx-theme + # sphinx backoff==2.2.1 # via # -r requirements/test.txt @@ -41,6 +45,8 @@ backports-zoneinfo[tzdata]==0.2.1 # django # djangorestframework # kombu +beautifulsoup4==4.12.3 + # via pydata-sphinx-theme billiard==4.2.0 # via # -r requirements/test.txt @@ -146,7 +152,6 @@ django==4.2.13 # via # -c requirements/common_constraints.txt # -c requirements/constraints.txt - # -r requirements/test.txt # django-cors-headers # django-crum # django-extensions @@ -191,6 +196,7 @@ doc8==1.1.1 docutils==0.19 # via # doc8 + # pydata-sphinx-theme # readme-renderer # restructuredtext-lint # sphinx @@ -219,8 +225,6 @@ edx-opaque-keys==2.10.0 # edx-drf-extensions edx-rest-api-client==5.7.1 # via -r requirements/test.txt -edx-sphinx-theme==3.1.0 - # via -r requirements/doc.in exceptiongroup==1.2.1 # via # -r requirements/test.txt @@ -327,6 +331,7 @@ packaging==24.1 # -r requirements/test.txt # build # marshmallow + # pydata-sphinx-theme # pyproject-api # pytest # sphinx @@ -362,9 +367,13 @@ pycparser==2.22 # via # -r requirements/test.txt # cffi +pydata-sphinx-theme==0.14.4 + # via sphinx-book-theme pygments==2.18.0 # via + # accessible-pygments # doc8 + # pydata-sphinx-theme # readme-renderer # rich # sphinx @@ -502,7 +511,6 @@ six==1.16.0 # edx-auth-backends # edx-django-release-util # edx-lint - # edx-sphinx-theme # python-dateutil slumber==0.7.1 # via @@ -519,10 +527,15 @@ social-auth-core==4.5.4 # -r requirements/test.txt # edx-auth-backends # social-auth-app-django +soupsieve==2.5 + # via beautifulsoup4 sphinx==5.3.0 # via # -r requirements/doc.in - # edx-sphinx-theme + # pydata-sphinx-theme + # sphinx-book-theme +sphinx-book-theme==1.0.1 + # via -r requirements/doc.in sphinxcontrib-applehelp==1.0.4 # via sphinx sphinxcontrib-devhelp==1.0.2 @@ -579,6 +592,7 @@ typing-extensions==4.12.2 # astroid # edx-opaque-keys # kombu + # pydata-sphinx-theme # pylint # rich # stripe