feat: slash-and-burn Problem block built-in implementation#38751
feat: slash-and-burn Problem block built-in implementation#38751irfanuddinahmad 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. |
fcc939b to
356dc98
Compare
20097bb to
46e90c6
Compare
Removes the built-in ProblemBlock shim and all associated assets now that the extracted xblocks_contrib.problem.ProblemBlock is the production implementation. - Delete xmodule/capa_block.py (_BuiltInProblemBlock + shim) - Delete xmodule/capa/ (deprecated safe_exec shim pointing to xblocks_contrib) - Delete xmodule/js/src/capa/ JS files (display, imageinput, schematic) - Delete xmodule/static/css-builtin-blocks/ProblemBlockDisplay.css - Delete xmodule/tests/test_capa_block.py (tested _BuiltInProblemBlock directly) - Delete lms/djangoapps/grades/tests/integration/test_problems.py (used reset_class shim) - Remove USE_EXTRACTED_PROBLEM_BLOCK toggle from openedx/envs/common.py - Update CODE_JAIL_REST_SERVICE_REMOTE_EXEC to xblocks_contrib path - Remove problem entrypoint from pyproject.toml - Remove ProblemBlockDisplay webpack entry - Update all ProblemBlock/SHOWANSWER imports to xblocks_contrib.problem Part of epic #37819 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
46e90c6 to
bebc423
Compare
Summary
Removes the built-in
ProblemBlockshim (xmodule/capa_block.py) and all associated assets, completing the extraction of the Problem XBlock toxblocks_contrib. Part of the Slash-n-Burn Built-In XBlocks epic.xmodule/capa_block.py(2481 LOC —_BuiltInProblemBlockclass and shim)xmodule/capa/(deprecatedsafe_execshim pointing toxblocks_contrib)xmodule/js/src/capa/JS files (display.js,imageinput.js,schematic.js)xmodule/static/css-builtin-blocks/ProblemBlockDisplay.cssxmodule/tests/test_capa_block.py(directly tested_BuiltInProblemBlock)lms/djangoapps/grades/tests/integration/test_problems.py(relied onreset_classshim)USE_EXTRACTED_PROBLEM_BLOCKDjango setting toggle fromopenedx/envs/common.pyCODE_JAIL_REST_SERVICE_REMOTE_EXECto point directly toxblocks_contrib.problem.capa.safe_exec.remote_execproblementrypoint frompyproject.tomlProblemBlockDisplaywebpack entry fromwebpack.builtinblocks.config.jsProblemBlock,SHOWANSWER, andgenerate_report_dataimports/patches to usexblocks_contrib.problemTest plan
pytest xmodule/tests/test_delay_between_attempts.py— no capa_block importspytest xmodule/tests/test_item_bank.py— ProblemBlock from xblocks_contribpytest xmodule/tests/test_library_content.py— ProblemBlock from xblocks_contribpytest cms/djangoapps/contentstore/tests/test_crud.pypytest cms/djangoapps/contentstore/tests/test_contentstore.pypytest lms/djangoapps/courseware/tests/test_block_render.pypytest lms/djangoapps/instructor_task/tests/test_tasks_helper.pypytest openedx/features/personalized_learner_schedules/show_answer/tests/🤖 Generated with Claude Code
Closes openedx/public-engineering#540