docs: read version from pybind11 file (#2496)

* docs: read version from pybind11 file

* docs: show full PEP 440 version everywhere
This commit is contained in:
Henry Schreiner 2020-09-17 09:08:08 -04:00 committed by GitHub
parent 4e7c08daee
commit 99ef2b8467
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 8 deletions

View File

@ -59,11 +59,15 @@ author = 'Wenzel Jakob'
# The version info for the project you're documenting, acts as replacement for # The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the # |version| and |release|, also used in various other places throughout the
# built documents. # built documents.
#
# The short X.Y version. # Read the listed version
version = '2.5' with open("../pybind11/_version.py") as f:
code = compile(f.read(), "../pybind11/_version.py", "exec")
loc = {}
exec(code, loc)
# The full version, including alpha/beta/rc tags. # The full version, including alpha/beta/rc tags.
release = '2.5.dev1' version = loc["__version__"]
# The language for content autogenerated by Sphinx. Refer to documentation # The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages. # for a list of supported languages.
@ -145,7 +149,7 @@ else:
#html_theme_path = [] #html_theme_path = []
# The name for this set of Sphinx documents. If None, it defaults to # The name for this set of Sphinx documents. If None, it defaults to
# "<project> v<release> documentation". # "<project> v<version> documentation".
#html_title = None #html_title = None
# A shorter title for the navigation bar. Default is the same as html_title. # A shorter title for the navigation bar. Default is the same as html_title.

View File

@ -35,9 +35,9 @@ to_src = (
# Read the listed version # Read the listed version
with open("pybind11/_version.py") as f: with open("pybind11/_version.py") as f:
code = compile(f.read(), "pybind11/_version.py", "exec") code = compile(f.read(), "pybind11/_version.py", "exec")
loc = {} loc = {}
exec(code, loc) exec(code, loc)
version = loc["__version__"] version = loc["__version__"]
# Verify that the version matches the one in C++ # Verify that the version matches the one in C++
with open("include/pybind11/detail/common.h") as f: with open("include/pybind11/detail/common.h") as f: