Skip to content

Commit dfb7841

Browse files
committed
Sphinx-rtd-theme and m2r incompatible with Sphinx 3.
1 parent aa0e29a commit dfb7841

File tree

4 files changed

+11
-131
lines changed

4 files changed

+11
-131
lines changed

docs/Makefile

+5-4
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
# Minimal makefile for Sphinx documentation
22
#
33

4-
# You can set these variables from the command line.
5-
SPHINXOPTS =
6-
SPHINXBUILD = sphinx-build
4+
# You can set these variables from the command line, and also
5+
# from the environment for the first two.
6+
SPHINXOPTS ?=
7+
SPHINXBUILD ?= sphinx-build
78
SOURCEDIR = .
89
BUILDDIR = _build
910

@@ -16,4 +17,4 @@ help:
1617
# Catch-all target: route all unknown targets to Sphinx using the new
1718
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
1819
%: Makefile
19-
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
20+
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

docs/conf.py

+4-125
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
1-
# -*- coding: utf-8 -*-
2-
#
31
# Configuration file for the Sphinx documentation builder.
42
#
5-
# This file does only contain a selection of the most common options. For a
6-
# full list see the documentation:
7-
# http://www.sphinx-doc.org/en/master/config
3+
# This file only contains a selection of the most common options. For a full
4+
# list see the documentation:
5+
# https://www.sphinx-doc.org/en/master/usage/configuration.html
86

97
# -- Path setup --------------------------------------------------------------
108

@@ -24,18 +22,12 @@
2422
copyright = '2020, Aric Coady'
2523
author = 'Aric Coady'
2624

27-
# The short X.Y version
28-
version = multimethod.__version__
2925
# The full version, including alpha/beta/rc tags
30-
release = version
26+
release = multimethod.__version__
3127

3228

3329
# -- General configuration ---------------------------------------------------
3430

35-
# If your documentation needs a minimal Sphinx version, state it here.
36-
#
37-
# needs_sphinx = '1.0'
38-
3931
# Add any Sphinx extension module names here, as strings. They can be
4032
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
4133
# ones.
@@ -49,30 +41,11 @@
4941
# Add any paths that contain templates here, relative to this directory.
5042
templates_path = ['_templates']
5143

52-
# The suffix(es) of source filenames.
53-
# You can specify multiple suffix as a list of string:
54-
#
55-
# source_suffix = ['.rst', '.md']
56-
source_suffix = '.rst'
57-
58-
# The master toctree document.
59-
master_doc = 'index'
60-
61-
# The language for content autogenerated by Sphinx. Refer to documentation
62-
# for a list of supported languages.
63-
#
64-
# This is also used if you do content translation via gettext catalogs.
65-
# Usually you set "language" from the command line for these cases.
66-
language = None
67-
6844
# List of patterns, relative to source directory, that match files and
6945
# directories to ignore when looking for source files.
7046
# This pattern also affects html_static_path and html_extra_path.
7147
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
7248

73-
# The name of the Pygments (syntax highlighting) style to use.
74-
pygments_style = None
75-
7649

7750
# -- Options for HTML output -------------------------------------------------
7851

@@ -81,101 +54,7 @@
8154
#
8255
html_theme = 'sphinx_rtd_theme'
8356

84-
# Theme options are theme-specific and customize the look and feel of a theme
85-
# further. For a list of options available for each theme, see the
86-
# documentation.
87-
#
88-
# html_theme_options = {}
89-
9057
# Add any paths that contain custom static files (such as style sheets) here,
9158
# relative to this directory. They are copied after the builtin static files,
9259
# so a file named "default.css" will overwrite the builtin "default.css".
9360
# html_static_path = ['_static']
94-
95-
# Custom sidebar templates, must be a dictionary that maps document names
96-
# to template names.
97-
#
98-
# The default sidebars (for documents that don't match any pattern) are
99-
# defined by theme itself. Builtin themes are using these templates by
100-
# default: ``['localtoc.html', 'relations.html', 'sourcelink.html',
101-
# 'searchbox.html']``.
102-
#
103-
# html_sidebars = {}
104-
105-
106-
# -- Options for HTMLHelp output ---------------------------------------------
107-
108-
# Output file base name for HTML help builder.
109-
htmlhelp_basename = 'multimethoddoc'
110-
111-
112-
# -- Options for LaTeX output ------------------------------------------------
113-
114-
latex_elements = {
115-
# The paper size ('letterpaper' or 'a4paper').
116-
#
117-
# 'papersize': 'letterpaper',
118-
119-
# The font size ('10pt', '11pt' or '12pt').
120-
#
121-
# 'pointsize': '10pt',
122-
123-
# Additional stuff for the LaTeX preamble.
124-
#
125-
# 'preamble': '',
126-
127-
# Latex figure (float) alignment
128-
#
129-
# 'figure_align': 'htbp',
130-
}
131-
132-
# Grouping the document tree into LaTeX files. List of tuples
133-
# (source start file, target name, title,
134-
# author, documentclass [howto, manual, or own class]).
135-
latex_documents = [
136-
(master_doc, 'multimethod.tex', 'multimethod Documentation',
137-
'Aric Coady', 'manual'),
138-
]
139-
140-
141-
# -- Options for manual page output ------------------------------------------
142-
143-
# One entry per manual page. List of tuples
144-
# (source start file, name, description, authors, manual section).
145-
man_pages = [
146-
(master_doc, 'multimethod', 'multimethod Documentation',
147-
[author], 1)
148-
]
149-
150-
151-
# -- Options for Texinfo output ----------------------------------------------
152-
153-
# Grouping the document tree into Texinfo files. List of tuples
154-
# (source start file, target name, title, author,
155-
# dir menu entry, description, category)
156-
texinfo_documents = [
157-
(master_doc, 'multimethod', 'multimethod Documentation',
158-
author, 'multimethod', 'One line description of project.',
159-
'Miscellaneous'),
160-
]
161-
162-
163-
# -- Options for Epub output -------------------------------------------------
164-
165-
# Bibliographic Dublin Core info.
166-
epub_title = project
167-
168-
# The unique identifier of the text. This can be a ISBN number
169-
# or the project homepage.
170-
#
171-
# epub_identifier = ''
172-
173-
# A unique identification for the text.
174-
#
175-
# epub_uid = ''
176-
177-
# A list of files that should not be packed into the epub file.
178-
epub_exclude_files = ['search.html']
179-
180-
181-
# -- Extension configuration -------------------------------------------------

multimethod.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ def __new__(cls, tp, *args):
4141
if isinstance(tp, typing.TypeVar):
4242
if not tp.__constraints__:
4343
return object
44-
tp, args = typing.Union, tp.__constraints__
44+
tp = typing.Union[tp.__constraints__]
4545
origin = getattr(tp, '__extra__', getattr(tp, '__origin__', tp))
4646
args = tuple(map(cls, getattr(tp, '__args__', None) or args))
4747
if set(args) <= {object} and not (origin is tuple and args):

setup.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
project_urls={'Documentation': 'https://multimethod.readthedocs.io'},
1414
license='Apache Software License',
1515
py_modules=['multimethod'],
16-
extras_require={'docs': ['m2r', 'nbsphinx', 'jupyter']},
16+
extras_require={'docs': ['m2r', 'nbsphinx', 'jupyter', 'sphinx<3']},
1717
python_requires='>=3.6',
1818
tests_require=['pytest-cov'],
1919
keywords='multiple dispatch multidispatch generic functions methods overload',

0 commit comments

Comments
 (0)