mycroft-core/doc/conf.py

122 lines
2.9 KiB
Python
Raw Normal View History

2017-08-28 22:42:17 +00:00
#
Change to Apache 2.0 license from GPLv3.0 This commit officially switches the mycroft-core repository from GPLv3.0 licensing to Apache 2.0. All dependencies on GPL'ed code have been removed and we have contacted all previous contributors with still-existing code in the repository to agree to this change. Going forward, all contributors will sign a Contributor License Agreement (CLA) by visiting https://mycroft.ai/cla, then they will be included in the Mycroft Project's overall Contributor list, found at: https://github.com/MycroftAI/contributors. This cleanly protects the project, the contributor and all who use the technology to build upon. Futher discussion can be found at this blog post: https://mycroft.ai/blog/right-license/ This commit also removes all __author__="" from the code. These lines are painful to maintain and the etiquette surrounding their maintainence is unclear. Do you remove a name from the list if the last line of code the wrote gets replaced? Etc. Now all contributors are publicly acknowledged in the aforementioned repo, and actual authorship is maintained by Github in a much more effective and elegant way! Finally, a few references to "Mycroft AI" were changed to the correct legal entity name "Mycroft AI Inc." ==== Fixed Issues ==== #403 Update License.md and file headers to Apache 2.0 #400 Update LICENSE.md ==== Documentation Notes ==== Deprecated the ScheduledSkill and ScheduledCRUDSkill classes. These capabilities have been superceded by the more flexible MycroftSkill class methods schedule_event(), schedule_repeating_event(), update_event(), and cancel_event().
2017-10-04 06:28:44 +00:00
# Copyright 2017 Mycroft AI Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#
2017-08-28 22:42:17 +00:00
# Mycroft documentation build configuration file
#
import sys
2018-01-12 19:47:42 +00:00
import re
import os
2017-08-28 22:42:17 +00:00
import sphinx_rtd_theme
from sphinx.ext.autodoc import (
ClassLevelDocumenter, InstanceAttributeDocumenter)
def iad_add_directive_header(self, sig):
ClassLevelDocumenter.add_directive_header(self, sig)
InstanceAttributeDocumenter.add_directive_header = iad_add_directive_header
Change to Apache 2.0 license from GPLv3.0 This commit officially switches the mycroft-core repository from GPLv3.0 licensing to Apache 2.0. All dependencies on GPL'ed code have been removed and we have contacted all previous contributors with still-existing code in the repository to agree to this change. Going forward, all contributors will sign a Contributor License Agreement (CLA) by visiting https://mycroft.ai/cla, then they will be included in the Mycroft Project's overall Contributor list, found at: https://github.com/MycroftAI/contributors. This cleanly protects the project, the contributor and all who use the technology to build upon. Futher discussion can be found at this blog post: https://mycroft.ai/blog/right-license/ This commit also removes all __author__="" from the code. These lines are painful to maintain and the etiquette surrounding their maintainence is unclear. Do you remove a name from the list if the last line of code the wrote gets replaced? Etc. Now all contributors are publicly acknowledged in the aforementioned repo, and actual authorship is maintained by Github in a much more effective and elegant way! Finally, a few references to "Mycroft AI" were changed to the correct legal entity name "Mycroft AI Inc." ==== Fixed Issues ==== #403 Update License.md and file headers to Apache 2.0 #400 Update LICENSE.md ==== Documentation Notes ==== Deprecated the ScheduledSkill and ScheduledCRUDSkill classes. These capabilities have been superceded by the more flexible MycroftSkill class methods schedule_event(), schedule_repeating_event(), update_event(), and cancel_event().
2017-10-04 06:28:44 +00:00
2017-08-28 22:42:17 +00:00
sys.path.insert(0, os.path.abspath('../'))
# General Configuration
extensions = [
2018-01-12 19:47:42 +00:00
'sphinx.ext.autodoc',
2017-08-28 22:42:17 +00:00
'sphinx.ext.coverage',
'sphinx.ext.viewcode',
'sphinx.ext.githubpages',
'sphinx.ext.napoleon'
]
2018-01-12 19:47:42 +00:00
# Assuming package name is the same as the module name
2018-01-15 07:36:19 +00:00
with open(os.path.join(os.path.dirname(os.path.dirname(
os.path.realpath(__file__))), 'requirements.txt')) as f:
autodoc_mock_imports = map(str.strip, re.findall(r'^\s*[a-zA-Z_]*',
f.read().lower().replace('-', '_'),
flags=re.MULTILINE))
2018-01-12 19:47:42 +00:00
# Dependencies with different module names
autodoc_mock_imports = list(autodoc_mock_imports) + [
2018-01-12 19:47:42 +00:00
'adapt',
'alsaaudio',
'dateutil',
'past',
'serial',
'websocket',
'speech_recognition'
2017-08-28 22:42:17 +00:00
]
templates_path = ['_templates']
source_suffix = '.rst'
master_doc = 'index'
# General Info
project = 'Mycroft'
Change to Apache 2.0 license from GPLv3.0 This commit officially switches the mycroft-core repository from GPLv3.0 licensing to Apache 2.0. All dependencies on GPL'ed code have been removed and we have contacted all previous contributors with still-existing code in the repository to agree to this change. Going forward, all contributors will sign a Contributor License Agreement (CLA) by visiting https://mycroft.ai/cla, then they will be included in the Mycroft Project's overall Contributor list, found at: https://github.com/MycroftAI/contributors. This cleanly protects the project, the contributor and all who use the technology to build upon. Futher discussion can be found at this blog post: https://mycroft.ai/blog/right-license/ This commit also removes all __author__="" from the code. These lines are painful to maintain and the etiquette surrounding their maintainence is unclear. Do you remove a name from the list if the last line of code the wrote gets replaced? Etc. Now all contributors are publicly acknowledged in the aforementioned repo, and actual authorship is maintained by Github in a much more effective and elegant way! Finally, a few references to "Mycroft AI" were changed to the correct legal entity name "Mycroft AI Inc." ==== Fixed Issues ==== #403 Update License.md and file headers to Apache 2.0 #400 Update LICENSE.md ==== Documentation Notes ==== Deprecated the ScheduledSkill and ScheduledCRUDSkill classes. These capabilities have been superceded by the more flexible MycroftSkill class methods schedule_event(), schedule_repeating_event(), update_event(), and cancel_event().
2017-10-04 06:28:44 +00:00
copyright = '2017, Mycroft AI Inc.'
author = 'Mycroft AI Inc.'
2017-08-28 22:42:17 +00:00
version = '0.1.0'
release = '0.1.0' # Includes alpha/beta/rc tags.
language = None
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
# Syntax Highlighting
pygments_style = 'sphinx'
todo_include_todos = False
html_theme = "sphinx_rtd_theme"
html_theme_path = [sphinx_rtd_theme.get_html_theme_path()]
html_theme_options = {
'navigation_depth': 4,
}
html_static_path = []
htmlhelp_basename = 'Mycroftdoc'
# Options for LaTeX output
latex_elements = {}
latex_documents = [
(master_doc, 'Mycroft.tex', 'Mycroft Documentation',
'Matthew Scholefield', 'manual'),
]
# Options for manual page output
man_pages = [
(master_doc, 'mycroft', 'Mycroft Documentation',
[author], 1)
]
# Options for Texinfo output
texinfo_documents = [
(master_doc, 'Mycroft', 'Mycroft Documentation',
author, 'Mycroft', 'Mycroft Artificial Intelligence Platform.',
'Miscellaneous'),
]
# Options for Napoleon
napoleon_google_docstring = True
napoleon_numpy_docstring = False