Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add (now mandatory) .readthedocs.yaml file, add docs extras and update sphinx conf #787

Merged
merged 1 commit into from
Dec 8, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Read the Docs configuration file for Sphinx projects
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

version: 2

build:
os: ubuntu-22.04
tools:
python: "3"

python:
install:
- requirements: docs/requirements.txt

sphinx:
configuration: docs/source/conf.py
2 changes: 2 additions & 0 deletions docs/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Sphinx~=7.2.6
furo==2023.9.10
37 changes: 28 additions & 9 deletions docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,10 @@
# All configuration values have a default; values that are commented out
# serve to show the default.

import datetime
import os
import re
import sys
import plyer

# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
Expand Down Expand Up @@ -42,17 +43,35 @@
master_doc = 'index'

# General information about the project.
project = u'Plyer'
copyright = u'2013-2023, Kivy Team and other contributors'
project = 'Plyer'

_today = datetime.datetime.now()

author = "Kivy Team and other contributors"

copyright = f'{_today.year}, {author}'

# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#

# Lookup the version from the pyjnius module, without installing it
# since readthedocs.org may have issue to install it.
# Read the version from the __init__.py file, without importing it.
def get_version():
with open(
os.path.join(os.path.abspath("../.."), "plyer", "__init__.py")
) as fp:
for line in fp:
m = re.search(r'^\s*__version__\s*=\s*([\'"])([^\'"]+)\1\s*$', line)
if m:
return m.group(2)

# The short X.Y version.
version = plyer.__version__
version = get_version()
# The full version, including alpha/beta/rc tags.
release = plyer.__version__
release = get_version()

# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
Expand Down Expand Up @@ -96,7 +115,7 @@

# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
html_theme = 'default'
html_theme = 'furo'

# 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
Expand Down Expand Up @@ -189,7 +208,7 @@
# (source start file, target name, title, author, documentclass [howto/manual])
latex_documents = [(
'index', 'Plyer.tex', u'Plyer Documentation',
u'Kivy Team and other contributors', 'manual'
author, 'manual'
), ]

# The name of an image file (relative to this directory) to place at the top of
Expand Down Expand Up @@ -219,7 +238,7 @@
# (source start file, name, description, authors, manual section).
man_pages = [
('index', 'plyer', u'Plyer Documentation',
[u'Kivy Team and other contributors'], 1)
[author], 1)
]

# If true, show URL addresses after external links.
Expand All @@ -233,7 +252,7 @@
# dir menu entry, description, category)
texinfo_documents = [(
'index', 'Plyer', u'Plyer Documentation',
u'Kivy Team and other contributors',
author,
'Plyer',
'Plyer is a platform-independent Python API for accessing hardware '
'features of various platforms (Android, iOS, macOS, Linux and Windows).',
Expand Down
Loading