This means that Asides will not run for many third-party XBlocks, or even standard bundled ones like ORA that use
This came up recently in the context of VideoBlock:
Quoting @asadali145:
I don't have enough in-depth context of XBlock and the LMS Runtime, so my analysis might be wrong. Here are my thoughts on this:
- All of the XML import code that's also responsible for parsing the asides exists in edx-platform. Adding support to the XBlock repo is very much impossible because we don't really interact with the XBlock internals during the parsing. Some responsible classes and methods for Parsing are:
- XMLModuleStore recursively parses the XML and, in the process, calls the XMLMixin.parse_xml for all of the course blocks.
- XMLMixin.parse_xml is responsible for parsing the asides. This is one that's overridden by the Video and ORA blocks and responsible for parsing the Asides.
- ImportSystem is the runtime that is responsible for processing the XML string to XBlock.
- Adding support to LMS Runtime will require refactoring and is also complex due to the checks around the runtime type. ImportSystem is the import runtime.
- Any other approaches:
- We might be able to add some support in CourseImportManager. Saying this, I think we should have someone with more domain knowledge take a deeper look and we may find a better approach.
Also, we would like to get this PR reviewed & merged before Teak as the general fix requires more time.
I am attaching the code flow for a Problem block that is followed when parsing the Asides for a Problem Block.
asides_parsing_trace.txt
This means that Asides will not run for many third-party XBlocks, or even standard bundled ones like ORA that use
This came up recently in the context of VideoBlock:
Quoting @asadali145: