refactor: slash-and-burn Annotatable BuiltIn XBlock - #38746
refactor: slash-and-burn Annotatable BuiltIn XBlock#38746irfanuddinahmad wants to merge 4 commits into
Conversation
|
Thanks for the pull request, @irfanuddinahmad! 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. |
cdd06dc to
4755121
Compare
47349ab to
f7e929e
Compare
Removes the built-in Annotatable XBlock and all associated assets now
that USE_EXTRACTED_ANNOTATABLE_BLOCK has been True. Keeps
xmodule/annotator_mixin.py as it is still used by
cms/djangoapps/contentstore/courseware_index.py and xmodule/util/misc.py.
- Remove USE_EXTRACTED_ANNOTATABLE_BLOCK toggle from common.py
- Remove annotatable entrypoint from pyproject.toml
- Delete xmodule/annotatable_block.py (built-in class + shim)
- Delete xmodule/js/src/annotatable/display.js
- Delete xmodule/js/spec/annotatable/display_spec.js and fixture
- Delete lms/templates/annotatable.html
- Delete xmodule/static/css-builtin-blocks/AnnotatableBlock{Display,Editor}.css
- Remove AnnotatableBlockDisplay/AnnotatableBlockEditor webpack entries
- Delete xmodule/tests/test_annotatable_block.py
- Update docstring in xblock_serializer/utils.py to remove stale reference
Closes openedx/public-engineering#535
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
f7e929e to
92d60da
Compare
The AnnotatableBlockDisplay webpack entry (and the annotatable/display.js file itself) are deleted in this PR. The corresponding imports-loader rule in webpack.common.config.js was left behind; remove it for consistency with how Poll, WordCloud, and LTI PRs handle their own rule cleanup. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Summary
Removes the built-in Annotatable XBlock and all associated assets. The extracted
xblocks_contrib.annotatable.AnnotatableBlockhas been the active implementation sinceUSE_EXTRACTED_ANNOTATABLE_BLOCK = True.Step 3 of 8 in the Slash-n-Burn Built-In XBlocks epic.
Closes openedx/public-engineering#535
Changes
USE_EXTRACTED_ANNOTATABLE_BLOCKtoggle fromopenedx/envs/common.pyannotatableentrypoint frompyproject.toml(the xblocks-contrib entrypoint remains active)xmodule/annotatable_block.pyxmodule/js/src/annotatable/display.js, JS spec, and HTML fixturelms/templates/annotatable.htmlxmodule/static/css-builtin-blocks/AnnotatableBlock{Display,Editor}.cssAnnotatableBlockDisplay/AnnotatableBlockEditorwebpack entriesxmodule/tests/test_annotatable_block.pyAnnotatableBlockreference inxblock_serializer/utils.pydocstringEpic Step 1: Post-extraction commit review
Reviewed commits to
xmodule/annotatable_block.pyafterUSE_EXTRACTED_ANNOTATABLE_BLOCKwas set toTrue(2025-12-16 ·24cb3cf9f5). All 4 post-toggle commits were cosmetic: deprecation markers (#38174), ruff suppression, import sorting, and lint-amnesty removal. No functional bug fixes or features to port.Test plan
Automated checks (CI):
xmoduleunit tests:pytest xmodule/tests/npm run buildannotator_mixin.html_to_textstill works (used by search indexing)