This repository has been archived by the owner on Jun 7, 2023. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 225
/
pyproject.toml
139 lines (129 loc) · 4.15 KB
/
pyproject.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
# ********************************
# |docname| - Poetry configuration
# ********************************
#
# See https://python-poetry.org/docs/dependency-specification/ to get an understanding of
# how poetry specifies dependencies.
#
# Project metadata
# ================
[tool.poetry]
authors = ["Brad Miller <[email protected]>"]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Environment :: Console",
"Environment :: Plugins",
"Environment :: Web Environment",
"Framework :: Sphinx :: Extension",
"Intended Audience :: Education",
"License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)",
"Operating System :: MacOS",
"Operating System :: Unix",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Topic :: Education",
"Topic :: Text Processing :: Markup",
]
description = "Sphinx extensions for writing interactive documents."
documentation = "https://bookserver.readthedocs.io/en/latest/"
keywords = ["runestone", "sphinx", "ebook", "oer", "education"]
license = "GPL"
name = "runestone"
readme = "README.rst"
repository = "https://github.com/RunestoneInteractive/RunestoneComponents"
version = "6.6.2"
# See https://python-poetry.org/docs/pyproject/#include-and-exclude.
include = [
"README.md",
# Webpacked output.
"runestone/dist/*",
# Some of the Runestone Components doesn't use webpack; they still need raw JS/CSS available. See ``runestone_static_dirs()``.
"runestone/animation/js/*",
"runestone/codelens/js/*",
"runestone/webgldemo/js/*",
"runestone/matrixeq/js/*",
"runestone/accessibility/css/*",
"runestone/webgldemo/css/*",
"runestone/matrixeq/css/*",
"runestone/lp/css/*",
# We need to include the templates used by Sphinx.
"runestone/common/project_template/**/*",
]
# The includes above override these.
exclude = [
# Images/media.
"**/*.cur",
"**/*.gif",
"**/*.jpg",
"**/*.mp3",
"**/*.ogg",
"**/*.png",
"**/*.svg",
"**/*.wav",
# Web files.
"**/*.css",
"**/*.html",
"**/*.js",
# Docs.
"**/*.md",
"**/*.rst",
# Skulpt files.
"runestone/activecode/js/skulpt.min.js.*",
# All test files.
"**/test/**/*",
]
# Dependencies
# ============
[tool.poetry.dependencies]
# TODO: loosen some of these? Explain why these versions were picked?
cogapp = ">=2.5"
click = "~8"
CodeChat = ">=1.8.6"
jinja2 = "<3.1.0"
Paver = ">=1.2.4"
python = "^3.7.0"
six = ">1.12"
Sphinx = ">=4.4.0,<6.0.0"
sphinxcontrib-paverutils = ">=1.17"
SQLAlchemy = ">=1.4.0"
# Development dependencies
# ========================
[tool.poetry.dev-dependencies]
selenium = ">=2.53.6, <4.0.0"
pyvirtualdisplay = "~3"
pytest = "~7"
pylint = "~2"
readme-renderer = ">24"
myst-parser = "~0"
json2xml = "~3"
# Scripts
# =======
# See `scripts <https://python-poetry.org/docs/pyproject/#scripts>`_.
[tool.poetry.scripts]
runestone = 'runestone.__main__:cli'
# Poetry backend
# ==============
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
# .. _pytest configuration:
#
# pytest configuration
# ====================
[tool.pytest.ini_options]
minversion = "6.0"
# Ignore source code produced by Sphinx. This happens because the source text for literate programming pages is a source file. Use `short tracebacks <https://docs.pytest.org/en/6.2.x/usage.html#modifying-python-traceback-printing>`_ since the default longer tracebacks produce too much noise.
addopts = "--ignore=_build --tb=short"
# The `pytest-env <https://github.com/MobileDynasty/pytest-env>`_ plugin sets these environment variables. Set them here, before imports, since bookserver imports read from the environment variables.
env = [
"BOOK_SERVER_CONFIG=test",
]
# The _`default logging level` of INFO produces a LOT of output. Use a higher level of ``WARNING`` to reduce the noise.
log_cli_level = 30
# All async tests use the `pytest-asyncio framework <https://github.com/pytest-dev/pytest-asyncio#modes>`_.
asyncio_mode = "auto"
[tool.mypy]
ignore_missing_imports = true