mirror of
https://github.com/ChristianLight/tutor.git
synced 2024-11-16 10:05:18 +00:00
7c157eccd5
- A shared cookie domain between lms and cms is no longer recommended: https://github.com/edx/edx-platform/blob/master/docs/guides/studio_oauth.rst - refactor: clean mounted data folder in lms/cms. In Lilac, the bind-mounted lms/data and cms/data folders are a mess because new folders are created there for every new course organisation. These folders are empty. As far as we know they are useless... With this change we move these folders to a dedicated "modulestore" subdirectory; which corresponds better to the initial intent of the fs_root setting. - fix: frontend failure during login to the lms. See: https://github.com/openedx/build-test-release-wg/issues/104 - feat: move all forum-related code to a dedicated plugin. Forum is an optional feature, and as such it deserves its own plugin. Starting from Maple, users will be able to install the forum from https://github.com/overhangio/tutor-forum/ - migrate from DCS_* session cookie settings to SESSION_*. That's because edx-platform no longer depends on django-cookies-samesite. Close https://github.com/openedx/build-test-release-wg/issues/110 - get rid of tons of deprecation warnings in the lms/cms - feat: make it possible to point to themed assets. Cherry-picking this change makes it possible to point to themed assets with a theme-agnostic url, notably from MFEs. - Install all official plugins as part of the `tutor[full]` package. - Don't print error messages about loading plugins during autocompletion. - Prompt for image building when upgrading from one release to the next. - Add `tutor local start --skip-build` option to skip building Docker images. Close #450. Close #545.
76 lines
2.4 KiB
Python
76 lines
2.4 KiB
Python
import io
|
|
import os
|
|
from setuptools import find_packages, setup
|
|
|
|
HERE = os.path.abspath(os.path.dirname(__file__))
|
|
|
|
|
|
def load_readme():
|
|
with io.open(os.path.join(HERE, "README.rst"), "rt", encoding="utf8") as f:
|
|
readme = f.read()
|
|
# Replace img src for publication on pypi
|
|
return readme.replace(
|
|
"./docs/img/", "https://github.com/overhangio/tutor/raw/master/docs/img/"
|
|
)
|
|
|
|
|
|
def load_about():
|
|
about = {}
|
|
with io.open(
|
|
os.path.join(HERE, "tutor", "__about__.py"), "rt", encoding="utf-8"
|
|
) as f:
|
|
exec(f.read(), about) # pylint: disable=exec-used
|
|
return about
|
|
|
|
|
|
def load_requirements(filename: str):
|
|
with io.open(
|
|
os.path.join(HERE, "requirements", filename), "rt", encoding="utf-8"
|
|
) as f:
|
|
return [line.strip() for line in f if is_requirement(line)]
|
|
|
|
|
|
def is_requirement(line):
|
|
return not (line.strip() == "" or line.startswith("#"))
|
|
|
|
|
|
ABOUT = load_about()
|
|
|
|
setup(
|
|
name="tutor",
|
|
version=ABOUT["__version__"],
|
|
url="https://docs.tutor.overhang.io/",
|
|
project_urls={
|
|
"Documentation": "https://docs.tutor.overhang.io/",
|
|
"Code": "https://github.com/overhangio/tutor",
|
|
"Issue tracker": "https://github.com/overhangio/tutor/issues",
|
|
"Community": "https://discuss.overhang.io",
|
|
},
|
|
license="AGPLv3",
|
|
author="Overhang.io",
|
|
author_email="contact@overhang.io",
|
|
description="The Docker-based Open edX distribution designed for peace of mind",
|
|
long_description=load_readme(),
|
|
long_description_content_type="text/x-rst",
|
|
packages=find_packages(exclude=["tests*"]),
|
|
include_package_data=True,
|
|
python_requires=">=3.6",
|
|
install_requires=load_requirements("base.in"),
|
|
extras_require={
|
|
"full": load_requirements("plugins.txt"),
|
|
},
|
|
entry_points={"console_scripts": ["tutor=tutor.commands.cli:main"]},
|
|
classifiers=[
|
|
"Development Status :: 5 - Production/Stable",
|
|
"Intended Audience :: Developers",
|
|
"License :: OSI Approved :: GNU Affero General Public License v3",
|
|
"Operating System :: OS Independent",
|
|
"Programming Language :: Python",
|
|
"Programming Language :: Python :: 3.6",
|
|
"Programming Language :: Python :: 3.7",
|
|
"Programming Language :: Python :: 3.8",
|
|
"Programming Language :: Python :: 3.9",
|
|
"Programming Language :: Python :: 3.10",
|
|
],
|
|
)
|