fix: keep the edx_video_id for libraries#282
Conversation
|
Thanks for the pull request, @marslanabdulrauf! This repository is currently maintained by Once you've gone through the following steps feel free to tag them in a comment and let them know that your changes are ready for engineering review. 🔘 Get product approvalIf you haven't already, check this list to see if your contribution needs to go through the product review process.
🔘 Provide contextTo help your reviewers and other members of the community understand the purpose and larger context of your changes, feel free to add as much of the following information to the PR description as you can:
🔘 Get a green buildIf one or more checks are failing, continue working on your changes until this is no longer the case and your build turns green. DetailsWhere can I find more information?If you'd like to get more details on all aspects of the review process for open source pull requests (OSPRs), check out the following resources: When can I expect my changes to be merged?Our goal is to get community contributions seen and reviewed as efficiently as possible. However, the amount of time that it takes to review and merge a PR can vary significantly based on factors such as:
💡 As a result it may take up to several weeks or months to complete a review and merge your PR. |
There was a problem hiding this comment.
Pull request overview
This PR addresses a regression in the “new runtime” (content libraries v2) XML parsing for VideoBlock where edx_video_id was being cleared during parse_xml_new_runtime, causing library videos that already exist in VAL to lose their Video ID in the editor and become unplayable.
Changes:
- Stop nulling
video_block.edx_video_idinparse_xml_new_runtimeso VAL-backed library videos keep resolving. - Add a regression test to ensure
edx_video_idis preserved and that VAL-import is not attempted in the new runtime path. - Add clarifying inline comments documenting why
edx_video_idis retained in the new runtime.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
xblocks_contrib/video/video.py |
Keeps edx_video_id intact in parse_xml_new_runtime to preserve VAL-backed playback for library videos. |
xblocks_contrib/video/tests/test_video.py |
Adds a regression test verifying edx_video_id preservation and no VAL import call in the new runtime path. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Important It's all Claude Code generated, @openedx/axim-aximprovements team will plan its review ahead Code ReviewThe fix is correct, minimal, and well-targeted. Removing I traced the full path:
Nits (non-blocking):
Suggestion: add a negative-case test, an OLX Before merge: bump Otherwise, approve. Nice catch on the root cause, and thanks for including a regression test. |
Related Ticket
https://github.com/mitodl/hq/issues/12414 (MIT Internal)
Steps to reproduce the Issue:
Possible root cause:
For new runtime
edxval edx_video_idis being set to None which causes no sources to be loaded, which leads to this "No playable video sources found." error.Description
This pull request updates the handling of the
edx_video_idfield in theparse_xml_new_runtimemethod to improve video compatibility in content libraries. Instead of settingedx_video_idtoNone, the code now retains its value, ensuring that videos already present in the Video Asset Library (VAL) continue to work as expected.video.py: Updatedparse_xml_new_runtimeto retain theedx_video_idfield, preventing issues where videos become unplayable or lose their ID in the editor after saving.Merge checklist:
Check off if complete or not applicable: