Skip to content

[DEPR]: Remove edx-jsme, Molecular Structure Problem type #14

Description

@pdpinch

Proposal Date

1 March 2022

Ticket Acceptance Date

30 March 2022

Technology Removal Date

after 31 March 2022

First Open edX Named Release Without This Functionality

Nutmeg

Rationale

edx-jsme is an XBlock for the edX platform which provides a new problem type: 'Molecular Structure'. This problem type integrates the JSME molecule editor seamlessly into an edX course.

The Molecular Structure Problem type was only ever used by one course on edx.org and the original authors of the xBlock are not available to upgrade it. It has not been updated to work with django 3.2 so may no longer be functional in the maple release of open edX.

Removal

We will remove the edx-jsme xblock from the standard edX requirements, i.e. https://github.com/edx/edx-platform/blob/780a6f3c2d11f126a2c01d6013b96d0b03d44870/requirements/edx/github.in#L60

Replacement

No replacement has been identified. However, it may be possible to use a combination of JSME and jsinput to achieve the same functionality.

Deprecation

Despite the README labeling, edx-jsme is not an XBlock. It’s an input type and response type for Capa (a.k.a. the ProblemBlock). The fact that input types and response types are extensible in this way is a very little known feature of ProblemBlocks. At one point, there was an idea that these (along with all input types and response types) would become XBlocks, but we never got around to making XBlocks that composable.

The non-XBlock nature of edx-jsme is significant because it means that we can’t lean on the normal deprecation mechanisms for XBlock, like the Studio messages warning people that they have unsupported content. We’ll have to manually test exactly what happens when this code is removed, and possibly make ProblemBlock more resilient to those kinds of failures. It’s possible that we’ll want to actually fold the JSMEInput and JSMEResponse classes to edx-platform proper, but in an extremely minimal configuration that only preserves score information (so it doesn’t mess up grading/progress), but ditches all the UI/UX code.

Migration

No response

Additional Info

We will also need to remove the molecule editor xblock from the standard demo course: https://github.com/edx/edx-demo-course/

Metadata

Metadata

Assignees

Labels

FC-0001deprProposal for deprecation & removal per OEP-21

Type

No type

Projects

Status
Plan Completed

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions