Note: Breaking changes between versions are indicated by "💥".
- [Bugfix] Fix pycontracts installation error when building openedx Docker image
- [Bugfix] Fix access to dicussion forum in development mode
- [Bugfix] Share grade download settings between the LMS and the CMS
- [Bugfix] Fix android user creation during init
- [Bugfix] Fix undefined settings in k8s scripts, such as
createuser
- [Bugfix] Fix TypeError on viewing xblock
- [Bugfix] Fix authentication in Android mobile application
- [Bugfix] Fix unsent activation emails and other asynchronous tasks
- [Security] Apply edx-platform upstream xss security fixes (pull request)
- [Bugfix] Fix broken
tutor ui
command in binary
- [Bugfix] Fix error on android user creation
- [Bugfix] Fix crash when viewing problem in LMS
- [Bugfix] Fix missing webpack-stats.json in openedx Docker image
- [Bugfix] Fix KeyError when running
local quickstart
for the first time
- 💥[Improvement] Upgrade to Juniper 🍾
- [Bugfix] Fix nginx resolver address to address container restarts
- [Feature] Add
--limit=myplugin
option toinit
commands to limit execution of initialisation to certain services and plugins
- [Improvement] Add
dig
,ping
utilities to openedx-dev Docker image - [Bugfix] Resolve "Can't connect to MySQL server" on init
- [Improvement] Make it possible to customize the MySQL root username, for connecting to external MySQL databases
- [Improvement] Upgrade Android app to v2.21.1 and enable many features, such as downloading videos to SD card. Thanks for the help @ejklock!
- [Bugfix] Fix Android app crash when accessing course
- [Improvement] Add ability to rescore SCORM units
- [Bugfix] Fix scoring of graded SCORM units
- [Improvement] Increase maximum uploaded file size in the CMS from 10 to 100 Mb.
- [Security] Apply most recent edx-platform security patches
- [Bugfix] Fix oauth2 authentication with 3rd-party services, such as discovery
- [Bugfix] Upgrade scorm xblock to solve caching issue
- [Improvement] Increase max upload allowed size to 250Mb in CMS
- 💥[Improvement] Do not deploy an ingress or SSL/TLS certificate issuer ressource by default in Kubernetes
- [Improvement] Fix tls certificate generation in k8s
- 💥[Improvement] Radically change the way jobs are run: we no longer "exec", but instead run a dedicated container.
- 💥[Improvement] Upgrade k8s certificate issuer to cert-manager.io/v1alpha2
- [Feature] Add SCORM XBlock to default openedx docker image
- [Feature] Make it easy to add custom translation strings to the openedx Docker image
- [Improvement] Make it possible to rely on a different npm registry for faster image building
- [Bugfix] Make sure all emails (including "password reset") are properly saved to a local file in development mode (#315)
- [Improvement] Add
openedx-development-settings
patch to patch the LMS and the CMS simultaneously in development - [Bugfix] Fix missing celery tasks in the CMS
- [Bugfix] Fix updates to the course structure in the LMS (#302)
- [Bugfix] Fix Android app build for domain names that include a dash ("-")
- [Feature] Add
encrypt
template filter to conveniently add htpasswd-based authentication to nginx - [Bugfix] Fix "missing tty" during init in cron jobs
- [Bugfix] Fix missing js translations
- [Bugfix] Fix tls certificate generation in cron jobs
- [Bugfix] Fix "Unable to resolve dependency" error during forum initialisation
- [Feature] Add
settheme
command to easily assign a theme to a domain name - [Improvement] Modify nginx access logs to include request scheme and server name (plugin developers should use the "tutor" log format)
- [Bugfix] Fix DNS resolution of restarted service
- [Feature] Restart multiple services with
local restart
- [Feature] Make it possible to easily reload openedx gunicorn process with
tutor local exec lms reload-gunicorn
- [Improvement] Rename lms/cms_worker to lms/cms-worker in local deployment
- [Improvement] Add the management plugin to the rabbitmq container
- [Improvement] Make it possible to run an Elasticsearch service on https
- [Improvement] Switch edx-platform from open-release/ironwood.2 tag to the open-release/ironwood.master branch
- [Security] Upgrade django to 1.11.28
- [Improvement] Make it possible to configure the elasticsearch heap size
- [Bugfix] Fix broken elasticsearch environment variables
- [Improvement] Restore more recent Android app version (#289).
- [Bugfix] Fix auth problem in Android app (#289)
- [Bugfix] Fix incorrectly parsed empty strings for
config save --set ...=...
commands
- [Bugfix] Make sure
docker-compose.override.yml
are loaded in dev and local contexts
- [Feature] Add
config render
command
- [Feature] Add support for simple, YAML-based plugins
- 💥[Improvement] The output of
plugins list
now includes plugin version numbers
- [Improvement] Explicitely point to docker.io images, when necessary, for podman compatibility
- [Bugfix] Fix oauth authentication in dev mode
- [Improvement] Upgrade to the 3.7 docker-compose syntax
- [Improvement] The
dev runserver
command can now be run for just any service - 💥[Feature]
dev run/exec
commands now support generic options which are passed to docker-compose. Consequently, defining theTUTOR_EDX_PLATFORM_PATH
environment variable no longer works. Instead, users are encouraged to explicitely pass the-v
option, define a command alias or create adocker-compose.override.yml
file.
- [Improvement] Make it possible to override the project name in development mode
- [Bugfix] Fix user switching in development mode
- [Bugfix] Fix "k8s quickstart" crash
- [Security] Apply django 1.11.21 -> 1.11.27 security patches
- [Bugfix] Fix running dev image with
sudo
- [Improvement] Add
cms/lms-env-features
patches (#276) - [Feature] Add plugin subcommands
- 💥[Improvement] Move
-r/--root
option to parent command level - [Bugfix] Fix course about page visibility
- [Improvement] Print gunicorn access logs in the console
- 💥[Improvement] Get rid of the
indexcourses
andportainer
command (#269)
- [Improvement] Add
k8s-deployments-nginx-volume-mounts
patch - [Bugfix] Fix running forum locally when both elasticsearch and mongodb are not activated (#266)
- [Bugfix] Fix MongoDb url in forum when running separate service (#267)
- 💥[Improvement] Better
dev
commands, with dedicated development docker image. One of the consequences is that thedev watchthemes
command is replaced bydev run lms watchthemes
. - [Improvement]
images
commands now accept multipleimage
arguments
- [Bugfix] Fix missing requirements file in pypi package (#261)
- [Improvement] Add missing cms/lms production/development setting patches
- [Improvement] Allow SigV4 authentication for video upload to S3
- [Bugfix] Fix cms development settings
- [Improvement] Upgrade openedx locales to Ironwood
- [Improvement] Properly set studio title (#246)
- [Improvement] Enable Mysql strict mode
- [Feature] Introduce tutor docker image
- [Feature] Introduce
local hook
command for plugin development. - [Bugfix] Persist
private.txt
file between two runs ofconfig save
. (#247) - [Improvement] Added configuration values to limit the number of gunicorn workers for the LMS and CMS.
- 💥[Improvement] Get rid of mysql-client container
- [Improvement] Add "local-docker-compose-lms/cms-dependencies" plugin patches
- [Improvement] Use "exec" instead of "run" to initialise local platform
- [Security] Fix CustomTagModule mako template injection
- [Improvement] Move all plugins outside of the tutor repo
- [Bugfix/Improvement] Add all plugins (with data) into binary bundle (#242)
- [Bugfix] Fix missing templates in bundled plugins
- [Bugfix] Enable html certificate view
- [Bugfix] Fix missing patches from minio plugin (thanks @Wejie!)
- [Feature] Modify
createuser
commands to define a password from the command line - [Improvement] Better yaml value parsing from command line
- [Feature] Add
dev exec
command - [Bugfix] Fix incorrect notes settings definition
- [Improvement] Make it possible to start/stop/reboot a selection of services
- [Improvement] Add
local/k8s reboot
commands - [Improvement] Add
-U/--unset
option toconfig save
- [Bugfix] Fix insecure static asset loading when web proxy is enabled
- [Improvement] Rename
SECRET_KEY
configuration parameter toOPENEDX_SECRET_KEY
- [Improvement] Add support for SSL and TLS in external SMTP server (#231)
- [Bugfix] Fix missing video transcripts in LMS (#229)
- [Improvement] Make it possible to enable/disable multiple plugins at once
- [Improvement] Add a few local and k8s patches for plugins
- [Bugfix] Add pre-init hook for correct initialisation of minio
- [Security] Apply certificate XSS security patch
- [Feature] Make it possible for plugins to patch the build templates
- [Improvement] Move Xqueue and Student notes to a dedicated plugin
- [Bugfix] Fix missing password values from generated configuration
- [Bugfix] Fix incorrect settings during lms/cms init (#224)
- [Bugfix] Fix install from pypi
- [Improvement] Get rid of kubernetes python package dependency
- [Feature] Creation of a plugin system
- [Feature] Kubernetes support out of beta
- [Improvement] Switch to pinned image tags for easier upgrades
- 💥[Improvement] Remove the
-y/--yes
option:tutor config save
is now non-interactive by default. Use-i/--interactive
to force interactive mode. - 💥[Improvement] Replace the
databases
command byinit
. - [Improvement] Upgrade to ironwood.2
- [Improvement] Add
-y/--yes
option tolocal quickstart
for non-interactive quickstart - [Improvement] Persist LMS/CMS logs to disk by default (with collaboration from @silviot 💪)
- [Bugfix] Fix installing a locally cloned requirement repository
- [Improvement] Add
--no-cache
option toimages build
- [Improvement] Make it possible to configure the notes service hostname
- [Improvement] Better, more robust MySQL initialisation
- [Bugfix] Fix boolean configuration choices
- [Improvement] Add
local exec
command for running commands inside existing containers - [Bugfix] Fix triple display of courses in LMS search (upstream patch, #189)
- [Bugfix] Reduce the number of gunicorn workers to address RAM usage (#207)
- [Bugfix] Fix "Timeout after 20s" on running migrations
- [Bugfix] Fix KeyError on first quickstart
- [Improvement] De-duplication of prod/dev settings. Thanks @silviot! 😺
- [Feature] Pluggable LMS/CMS/forum
- [Improvement] Safer environment overwrite. Thanks @silviot! 👐
- [Security] Fix Jinja2 vulnerability
- [Improvement] Improve CLI cold start performance
- [Improvement] Allow uppercase "Y" and "N" as answers to boolean questions
- [Improvement] Rename
--silent
option to-y/--yes
- [Bugfix] Fix (again) login from studio when https is activated (#193)
- [Bugfix] Fix
pip install tutor-openedx
- [Bugfix] Fix login from localhost
- [Bugfix] Fix Android app image build
- [Improvement] Improve assets building for development
- [Improvement] Support CMS login when the CMS is not a subdomain of the LMS
- [Feature] Upgrade from Hawthorn to Ironwood
- [Feature] Multiple platforms on a single server \o/
- [Feature] Easily configure web proxy on the host
- [Bugfix] Fix
images pull all
command which failed on "all" image - [Improvement] Add configurable mongodb, SMTP and rabbitmq authentication
- [Improvement] Harmonize mysql username/password configuration parameters
- [Feature] Configurable and pluggable data storage backends (#114)
- [Feature] Enable grade downloads by default (#143)
- [Improvement] Remove orphan containers on
local start
- [Improvement]
images pull
now also pulls vendor images - [Feature] Add convenient
config printvalue
command - [Feature] Customize docker registry
- [Feature] Load configuration parameters from the system environment
- [Improvement] Automatic environment re-generation after re-configuration
- [Improvement] Error and interrupt handling in UI and web UI
- [Bugfix] Fix missing webui env directory
- [Improvement] Install python requirements in virtual env in docker image
- [Bugfix] Add missing volume for theme development
- [Improvement] Rename "config [non]interactive" command to "config save [--silent]"
- [Improvement] More explicit logging during environment generation
- [Improvement] Configurable docker images (#122)
- [Bugfix] Fix "android pullimage" command
- [Improvement] Do not upgrade images as part of quickstart
- [Bugfix] Fix USERID setup in development mode and various dev-related docs (#177)
- [Bugfix] Fix import/export of demo course (#175)
- [Feature] Add cloud deployment script
- [Improvement] Run
images pull
command - [Improvement] Run
indexcourses
on importing demo course - [Improvement] Add
runserver stop
command
- [Minor] Minimum required
click
version is 7.0 (#171) - [Bugfix] Fix
runserver
dev command (#172) - [Minor] Fix non-https link to documentation in pypi
- [Minor] Fix
createuser
documentation
- [Bugfix] Add missing template data to pypi package
- [Bugfix] Fix quickstart on Kubernetes (#164)
- [Improvement] Add datatases task to Kubernetes quickstart (#167)
- [Bugfix] Fix import paths -- 🚀 thanks @silviot!
- [Bugfix] Properly set docker project name in mysql logs -- 🦊 thanks again @silviot!
- [Bugfix] fix mysql initialisation (#159, #160)
- [Improvement] Better handling of continuous integration
- [Bugfix] fix
tutor --version
(#156) - [Improvement] Absolute settings imports -- 📯 thanks @tonytan4ever!
- [Improvement] Complete rewrite of Tutor: switch from a make-based project to a single binary which runs all commands.
- [Feature] An web user interface can be created with
tutor webui start
- [Bugfix] Add missing elasticsearch to Kubernetes deployment (#147)
- [Improvement] Upload
tutor-openedx
to pypi
- 2019-01-27 [Bugfix] Fix video transcript/srt upload and download of user-uploaded files. Thanks @dannielariola!
- 2019-01-20 [Improvement] Make it easy to load custom settings for the local production install
- 2019-01-19 [Improvement] Upgrade to Ironwood
- 2019-01-16 [Improvement] Switch license from MIT to AGPL
- 2019-01-04 [Bugfix] Fix xqueue consumer command
- 2018-12-26 [Improvement] Upgrade nodejs to 5.5.1
- 2018-12-07 [Improvement] Bundle theme and production static assets in the openedx docker image
- 2018-12-02 [Feature] Download extra locales from openedx-i18n to the Open edX Docker image
- 2018-11-28 [Feature] Easily change openedx docker image
- 2018-11-28 [Feature] Enable comprehensive theming!
- 2018-11-28 [Improvement] Get rid of datadog
- 2018-11-28 [Improvement] Upgrade docker images to ubuntu 18.04 for android, forum, notes, xqueue
- 2018-11-28 [Feature] Make it possible to define default platform language interactively
- 2018-11-26 [Improvement] Make it easier to run a forked version of edx-platform
- 2018-11-25 [Feature] Use local filesystem for open assessment file upload
- 2018-11-23 [Improvement] Faster container bootstrapping without "chmod", as suggested by @silviot
- 2018-11-20 [Bugfix] Fix cross-platform theme assets generation
- 2018-11-17 [Improvement] Custom nginx port mapping. ⚔️ @frob @frohro
- 2018-11-17 [Improvement] Add "make restart-openedx" command. 👍 @frob
- 2018-11-13 [Improvement] Facilitate install of extra XBlocks. Thanks @frob!
- 2018-10-30 [Bugfix] Fix rabbitmq restart policy
- 2018-10-03 [Improvement/Bugfix] Fix and accelerate Android application build
- 2018-10-02 [Improvement] Bump Open edX version to hawthorn.2
- 2018-09-30 [Bugfix] Fix CMS celery worker, including export tasks
- 2018-09-30 [Improvement] Simplify boolean feature flags definition
- 2018-09-29 [Improvement] Add logging commands
- 2018-09-29 [Improvement] Add self-documented help with "make help"
- 2018-09-29 [Feature] Add Portainer as an optional web UI to administer docker containers
- 2018-09-15 [Feature] Add student notes as an optional feature
- 2018-09-15 [Feature] Add templates to configurator container, which can now be run separately
- 2018-09-15 [Improvement] Rename "up" and "daemon" commands to "run" and "daemonize"
- 2018-09-15 [Feature] Activate course search and discovery
- 2018-09-15 [Bugfix] Deduplicate console logs from lms/cms
- 2018-09-05 [Improvement] Use a single email address for all inbound email
- 2018-09-04 [Bugfix] Get make commands to work with 'sudo'
- 2018-09-02 [Bugfix] Get HTTPS to work for CMS. Thanks @flytreeleft!
- 2018-08-28 [Bugfix] Fix certbot image updating
- 2018-08-27 [Improvement] Add development requirements to openedx image
- 2018-08-27 [Bugfix] Upgrade mongodb
- 2018-08-19 [Improvement] Make Xqueue an optional feature
- 2018-08-16 [Feature] Add HTTPS support