.. _Open edX Maple Release: ###################### Open edX Maple Release ###################### These are the release notes for the Maple release, the 13th community release of the Open edX Platform, spanning changes from April 9 2021 to October 15 2021. You can also review details about `earlier releases`_ or learn more about the `Open edX Platform`_. .. _earlier releases: https://edx.readthedocs.io/projects/edx-developer-docs/en/latest/named_releases.html .. _Open edX Platform: https://open.edx.org .. contents:: :depth: 1 :local: ================ Breaking Changes ================ Tutor is the supported distribution ----------------------------------- `Tutor`_ is now the official, community-supported distribution of open edX for production. It replaces `edX configuration`_. The Tutor changelog for the Maple release is at https://github.com/overhangio/tutor/blob/master/CHANGELOG.md#v1300 .. _Tutor: https://docs.tutor.overhang.io/ .. _edX configuration: https://github.com/openedx/configuration/ Learning Micro-Frontend (MFE) becomes the default courseware experience ----------------------------------------------------------------------- .. warning:: Entrance exams, non-standard XML and HTML tags, and non-standard course hierarchies are not supported. See below for more details. Studio login changed to OAuth ----------------------------- In versions prior to Maple, Studio (CMS) shared a session cookie with the LMS, and redirected to the LMS for login. Studio is changing to become an OAuth client of the LMS, using the same SSO configuration that other IDAs use. (See `ARCHBOM-1860`_; `OEP-42`_) This is a breaking change. Follow the `Studio OAuth migration runbook`_ as part of upgrading to Maple. For devstack, run:: ./provision-ida-user.sh studio studio 18010 .. _ARCHBOM-1860: https://openedx.atlassian.net/browse/ARCHBOM-1860 .. _OEP-42: https://docs.openedx.org/projects/openedx-proposals/en/latest/best-practices/oep-0042-bp-authentication.html .. _Studio OAuth migration runbook: https://github.com/openedx/edx-platform/blob/open-release/maple.master/docs/guides/studio_oauth.rst django-cors-headers version updgraded ------------------------------------- django-cors-headers is upgraded to version 3.2.0. The setting :code:`CORS_ORIGIN_WHITELIST` now requires URI schemes. You will need to update your whitelist to include schemes, for example from this:: CORS_ORIGIN_WHITELIST = ["foo.com"] to this:: CORS_ORIGIN_WHITELIST = ["https://foo.com"] =================== Learner Experiences =================== Learning Micro-Frontend (MFE) ----------------------------- The Learning MFE (including both "courseware" and the "course home") is the default course experience in Maple. With the new experience, learners will notice a reduction in load times and better site performance. The Nutmeg release will drop support for the legacy (that is, LMS-rendered) course experience entirely. Configuration ^^^^^^^^^^^^^ - MFE branding elements can be set in the Tutor MFE plugin. See the `tutor mfe plugin README`_ for more details. - The :code:`courseware.use_legacy_frontend` and :code:`course_home.course_home_use_legacy_frontend` Waffle flags can be toggled on (either globally or per-course-run) in order to revert to the legacy (LMS Django-rendered) courseware experience. - The domain name for your learning MFE should be added to the :code:`CORS_ORIGIN_WHITELIST` for ecommerce, discovery, lms, and studio. .. _tutor mfe plugin README: https://github.com/overhangio/tutor-mfe#customise-mfes-logos Removed Features ^^^^^^^^^^^^^^^^ - Entrance Exams are slated to be deprecated and are never enabled on the MFE. Attempting to start a course with an entrance exam on the MFE results in an error. Using the waffle flags to enable the legacy experience should enable their usage for the time being, but their deprecation is forthcoming. - Problemsets and videosequences, which are deprecated variations of the Sequence block will not render in the MFE. Note, these could have only been added in raw OLX. This cannot affect courses authored entirely in Studio. - **Non-standard course hierarchies** Legacy courseware was willing to render some content that didn’t strictly follow that hierarchy, and that content will break in the MFE. This should only affect courses authored directly in OLX. Studio-authored courses already follow these hierarchy requirements. Essentially, courses must follow a stricter hierarchy in order to work in the MFE: * The direct children of the root Course block should be Section (aka Chapter) blocks. * The children of the Sections must be Subsections (aka Sequence) blocks. Each Subsection must be part of at most one Section. * Children of the Subsections should be "Unit-like" blocks (most commonly Verticals, but HTML/Problem/etc are okay too) Altered Features ^^^^^^^^^^^^^^^^ - The ability for course authors to preview units in the learner experience before they are published will preview in the legacy experience, not the MFE. Work enabling preview using the MFE is anticipated. - According to the HTML standard, and tags. Legacy courseware incidentally corrected this error when it occurred in course content. MFE courseware does not do that correction. Course authors should update their courses to use well-formed HTML if they happened to rely on self-closing