Releases: overhangio/tutor
v16.1.1
Install this version from pip with:
pip install "tutor[full]==16.1.1"
Or download the compiled binaries:
sudo curl -L "https://github.com/overhangio/tutor/releases/download/v16.1.1/tutor-$(uname -s)_$(uname -m)" -o /usr/local/bin/tutor
sudo chmod 0755 /usr/local/bin/tutor
See the installation docs for more installation options and instructions.
Changes
- 💥[Bugfix] Apply "fix mysql crash after upgrade to Palm" from 16.1.0 to
tutor k8s
deployments, as well. Users previously runningtutor k8s
withRUN_MYSQL: true
, with any version between 16.0.0 and 16.1.0 including, might have to fix their data manually. For users runningtutor local
, this change has no effect, as the underlying issue was already fixed in 16.1.0. For users runningtutor k8s
withRUN_MYSQL: false
, this change is also a no-op. (by @fghaas)
v16.1.0
Install this version from pip with:
pip install "tutor[full]==16.1.0"
Or download the compiled binaries:
sudo curl -L "https://github.com/overhangio/tutor/releases/download/v16.1.0/tutor-$(uname -s)_$(uname -m)" -o /usr/local/bin/tutor
sudo chmod 0755 /usr/local/bin/tutor
See the installation docs for more installation options and instructions.
Changes
- [Improvement] Improve support of legacy non-BuildKit mode: (by @regisb)
- [Bugfix] Fix building of openedx Docker image.
- [Improvement] Remove
--cache-from
build option. - [Improvement] Add a warning concerning the lack of support of the
--build-context
option.
- 💥[Bugfix] Fix mysql crash after upgrade to Palm. After an upgrade to Palm, the mysql client run by Django defaults to a utf8mb4 character set and collation, but the mysql server still runs with utf8mb3. This causes broken data during migration from Olive to Palm, and more generally when data is written to the database. To resolve this issue, we explicitely set the utf8mb3 charset and collation in the client. Users who were running Palm might have to fix their data manually. In the future we will upgrade the mysql server to utf8mb4. (by @regisb)
- [Improvement] We upgrade to MySQL 8.1.0 to avoid having to restart the server after the upgrade.
- [Bugfix] Ask whether user wants to run locally during
tutor local launch
. (by @regisb) - [Bugfix] Fix a race condition that could prevent a newly provisioned Studio container from starting due to a FileExistsError when creating logs directory.
v16.0.5
Install this version from pip with:
pip install "tutor[full]==16.0.5"
Or download the compiled binaries:
sudo curl -L "https://github.com/overhangio/tutor/releases/download/v16.0.5/tutor-$(uname -s)_$(uname -m)" -o /usr/local/bin/tutor
sudo chmod 0755 /usr/local/bin/tutor
See the installation docs for more installation options and instructions.
Changes
- [Improvement] Upgrade the Open edX default version to open-release/palm.2. (by @regisb)
v16.0.3
Install this version from pip with:
pip install "tutor[full]==16.0.3"
Or download the compiled binaries:
sudo curl -L "https://github.com/overhangio/tutor/releases/download/v16.0.3/tutor-$(uname -s)_$(uname -m)" -o /usr/local/bin/tutor
sudo chmod 0755 /usr/local/bin/tutor
See the installation docs for more installation options and instructions.
Changes
- [Bugfix] Improve
tutor ... do settheme default
so that it reverts to the default theme rather than trying to switch to a nonexistent theme named "default". This will clear up some error noise from LMS/CMS logs. (by @kdmccormick) - [Security] Fix content libraries creation by unprivileged users in studio (see security advisory). (by @regisb)
v16.0.2
Install this version from pip with:
pip install "tutor[full]==16.0.2"
Or download the compiled binaries:
sudo curl -L "https://github.com/overhangio/tutor/releases/download/v16.0.2/tutor-$(uname -s)_$(uname -m)" -o /usr/local/bin/tutor
sudo chmod 0755 /usr/local/bin/tutor
See the installation docs for more installation options and instructions.
Changes
- [Bugfix] On Kubernetes, fix mysql deployment by removing the
--ignore-db-dir
option, which no longer exists on MySQL 8. (by @regisb)
v16.0.1
Install this version from pip with:
pip install "tutor[full]==16.0.1"
Or download the compiled binaries:
sudo curl -L "https://github.com/overhangio/tutor/releases/download/v16.0.1/tutor-$(uname -s)_$(uname -m)" -o /usr/local/bin/tutor
sudo chmod 0755 /usr/local/bin/tutor
See the installation docs for more installation options and instructions.
Changes
- [Bugfix] Fix loading default Kubernetes config. (by @regisb)
v16.0.0
Install this version from pip with:
pip install "tutor[full]==16.0.0"
Or download the compiled binaries:
sudo curl -L "https://github.com/overhangio/tutor/releases/download/v16.0.0/tutor-$(uname -s)_$(uname -m)" -o /usr/local/bin/tutor
sudo chmod 0755 /usr/local/bin/tutor
See the installation docs for more installation options and instructions.
Changes
- 💥[Feature] Upgrade to Palm. (by @regisb)
- [Bugfix] Rename ORA2 file upload folder from "SET-ME-PLEASE (ex. bucket-name)" to "openedxuploads". This has the effect of moving the corresponding folder from the
<tutor root>/data/lms/ora2
directory. MinIO users were not affected by this bug. - 💥[Improvement] During registration, the honor code and terms of service links are no longer visible by default. For most platforms, these links did not work anyway.
- 💥[Deprecation] Halt support for Python 3.7. The binary release of Tutor is also no longer compatible with macOS 10.
- 💥[Deprecation] Drop support for
docker-compose
, also known as Compose V1. Thedocker compose
(no hyphen) plugin must be installed. - 💥[Refactor] We simplify the hooks API by getting rid of the
ContextTemplate
,FilterTemplate
andActionTemplate
classes. As a consequences, the following changes occur:APP
was previously a ContextTemplate, and is now a dictionary of contexts indexed by name. Developers who implemented this context should replaceContexts.APP(...)
byContexts.app(...)
.- Removed the
ENV_PATCH
filter, which was for internal use only anyway. - The
PLUGIN_LOADED
ActionTemplate is now an Action which takes a single argument. (the plugin name)
- 💥[Refactor] We refactored the hooks API further by removing the static hook indexes and the hooks names. As a consequence, the syntactic sugar functions from the "filters" and "actions" modules were all removed:
get
,add*
,iterate*
,apply*
,do*
, etc. - 💥[Deprecation] The obsolete filters
COMMANDS_PRE_INIT
andCOMMANDS_INIT
have been removed. Plugin developers should instead useCLI_DO_INIT_TASKS
(with suitable priorities). - 💥[Feature] The "openedx" Docker image is no longer built with docker-compose in development on
tutor dev start
. This used to be the case to make sure that it was always up-to-date, but it introduced a discrepancy in how images were build (docker compose build
vsdocker build
). As a consequence:- The "openedx" Docker image in development can be built with
tutor images build openedx-dev
. - The
tutor dev/local start --skip-build
option is removed. It is replaced by opt-in--build
.
- The "openedx" Docker image in development can be built with
- [Improvement] The
IMAGES_BUILD
filter now supports relative paths as strings, and not just as tuple of strings. - [Improvement] Auto-complete the image names in the
images build/pull/push/printtag
commands. - [Deprecation] For local installations, Docker v20.10.15 and Compose v2.0.0 are now the minimum required versions.
- [Bugfix] Make
tutor config printvalue ...
print actual yaml-formatted values, such as "true" and "null" - 💥[Improvement] MongoDb was upgraded to 4.4.
- [Bugfix] Rename ORA2 file upload folder from "SET-ME-PLEASE (ex. bucket-name)" to "openedxuploads". This has the effect of moving the corresponding folder from the
- 💥[Improvement] Deprecate the
RUN_LMS
andRUN_CMS
tutor settings, which should be mostly unused. (by @regisb) - [Improvement] Greatly simplify ownership of bind-mounted volumes with docker-compose. Instead of running one service per application, we run just a single "permissions" service. This change should be backward-compatible. (by @regisb)
- [Feature] Add a
config save -a/--append -A/--remove
options to conveniently append and remove values to/from list entries. (by @regisb) - [Improvement] Considerably accelerate building the "openedx" Docker image with
RUN --mount=type=cache
. This feature is only for Docker with BuildKit, so detection is performed at build-time. (by @regisb) - [Improvement] Automatically pull Docker image cache from the remote registry. Again, this will considerably improve image build-time, particularly in "cold-start" scenarios, where the images need to be built from scratch. The registry cache can be disabled with the
tutor images build --no-registry-cache
option. (by @regisb) - [Feature] Automatically mount host folders at build time. This is a really important feature, as it allows us to transparently build images using local forks of remote repositories. (by @regisb)
- 💥[Deprecation] Remove the various
--mount
options. These options are replaced by persistent mounts, which are managed by thetutor mounts
commands. (by @regisb) - [Feature] Add the
do importdemocourse --repo-dir=...
option, to import courses from subdirectories of git repositories. This allows us to import the openedx-test-course in Palm with:tutor local do importdemocourse --repo=https://github.com/openedx/openedx-test-course --version=o pen-release/palm.master --repo-dir=test-course/course
. (by @regisb)
v15.3.7
Install this version from pip with:
pip install "tutor[full]==15.3.7"
Or download the compiled binaries:
sudo curl -L "https://github.com/overhangio/tutor/releases/download/v15.3.7/tutor-$(uname -s)_$(uname -m)" -o /usr/local/bin/tutor
sudo chmod 0755 /usr/local/bin/tutor
See the installation docs for more installation options and instructions.
Changes
- [Bugfix] Change
authSource
toauthsource
(LOWERCASE) in mongo db parameters. This allow to authenticate with credentials in openedx code.(by @johanv26) - [Feature] Add support for loading in-cluster config when running inside a pod. In certain scenarios, Tutor may operate within a pod that has access to a cluster through role binding and a service account. In these instances, the ./kube/config file may not be present, but kubectl commands can still execute without any problems. (by @CodeWithEmad)
- [Improvement] Bump the default MongoDB Docker image reference from version 4.2.17 to 4.2.24. (by @fghaas)
v15.3.6
Install this version from pip with:
pip install "tutor[full]==15.3.6"
Or download the compiled binaries:
sudo curl -L "https://github.com/overhangio/tutor/releases/download/v15.3.6/tutor-$(uname -s)_$(uname -m)" -o /usr/local/bin/tutor
sudo chmod 0755 /usr/local/bin/tutor
See the installation docs for more installation options and instructions.
Changes
- [Feature] Upgrade to open-release/olive.4. (by @regisb)
v15.3.5
Install this version from pip with:
pip install "tutor[full]==15.3.5"
Or download the compiled binaries:
sudo curl -L "https://github.com/overhangio/tutor/releases/download/v15.3.5/tutor-$(uname -s)_$(uname -m)" -o /usr/local/bin/tutor
sudo chmod 0755 /usr/local/bin/tutor
See the installation docs for more installation options and instructions.
Changes
- [Feature] Make it possible to import the demo course from a different git repository or version. (by @regisb)
- [Feature] Add a convenient
do print-edx-platform-setting
command to print the value of an edx-platform setting. (by @regisb) - [Improvement] Improve edx-platform logging by silencing a couple deprecation warnings. (by @regisb)
- [Feature] Add a convenient
do sqlshell
command to enter a SQL shell as root. (by @regisb)