diff --git a/.gitignore b/.gitignore
index f6a874f..bf64712 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,3 +5,4 @@ __pycache__
*.egg-info/
/build/
/dist/
+.DS_Store
\ No newline at end of file
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 653d4fd..307d361 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,7 +1,7 @@
variables:
TUTOR_PLUGIN: webui
TUTOR_PYPI_PACKAGE: tutor-webui
- OPENEDX_RELEASE: palm
+ OPENEDX_RELEASE: quince
GITHUB_REPO: overhangio/tutor-webui
include:
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 668d1e7..7bd1236 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -19,6 +19,11 @@ instructions, because git commits are used to generate release notes:
+
+## v17.0.0 (2023-12-09)
+
+- 💥 [Feature] Upgrade to Quince (by @hinakhadim).
+
## v16.0.1 (2023-12-08)
diff --git a/setup.py b/setup.py
index 441c204..37eedf8 100644
--- a/setup.py
+++ b/setup.py
@@ -44,8 +44,8 @@ def load_about():
packages=find_packages(exclude=["tests*"]),
include_package_data=True,
python_requires=">=3.8",
- install_requires=["tutor>=16.0.0,<17.0.0", "click_repl>=0.2.0"],
- extras_require={"dev": "tutor[dev]>=16.0.0,<17.0.0"},
+ install_requires=["tutor>=17.0.0,<18.0.0", "click_repl>=0.3.0"],
+ extras_require={"dev": "tutor[dev]>=17.0.0,<18.0.0"},
entry_points={
"tutor.plugin.v1": ["webui = tutorwebui.plugin"],
},
diff --git a/tutorwebui/__about__.py b/tutorwebui/__about__.py
index 610c111..a08b09c 100644
--- a/tutorwebui/__about__.py
+++ b/tutorwebui/__about__.py
@@ -1 +1 @@
-__version__ = "16.0.1"
+__version__ = "17.0.0"
diff --git a/tutorwebui/cli.py b/tutorwebui/cli.py
index 7c940ee..cb3e26f 100644
--- a/tutorwebui/cli.py
+++ b/tutorwebui/cli.py
@@ -113,9 +113,8 @@ def shell() -> None:
Type "local launch" to configure and launch a new platform from scratch.
Type to exit."""
)
- # We need to manually patch the TutorCli object because click_repl
- # incorrectly calls the `commands` attribute. Note that this enables us to
- # run shell within shell, which is cool but a little weird...
+ # Retrieve the current Click context. The context is used to manage the state
+ # and pass around internal objects within the Click framework.
ctx = click.get_current_context()
if ctx.parent and ctx.parent.command:
ctx.parent.command.commands = {} # type: ignore