edx-platform's Dockerfile was removed in Jan 2025 because the
community was not maintaining or using it. The PR that removed it [1]
also removed the .dockerfile as an effort to clean up unnecessary
Docker-related files from the repo.
However, the .dockerignore file serves an important purpose for
*any* Docker image based on edx-platform: it identifies which files
and paths aren't relevant for the functioning of the image. For
example, Tutor greatly benefited from this file, because by ignoring
unnecessary files, the build context was shrunk and image cache
layers were less likely to be unnecesarily invalidated.
We restore the .dockerfile as it was previously in Sumac [2], with
the addition of /venv, /.venv, and __pycache__, and with the
removal of /Dockerfile (as it no longer exists).
[1] https://github.com/openedx/edx-platform/pull/35731
[2] https://github.com/openedx/edx-platform/blob/open-release/sumac.master/.dockerignore
While trying to be enrolled on a verified course, the upgrade process
gets to an error screen due to a double slash on the URL that it's added
while doing the redirection to the account microfrontend
Will be backported to Teak.
Part of https://github.com/openedx/wg-build-test-release/issues/468
This adds a migration to turn on the new React-based Markdown editing option
for newly-created ProblemBlocks for all authors. The option is nested
under "Advanced settings", just like the Advanced (OLX) problem editor.
The migration is written such that it will *not* overwrite an existing global
"No" waffle flag. Furthermore, our waffle utilities are designed such that
org-level and course-level overrides will still take preference over the flag
that the migration creates. Therefore, this should only take effect in cases
where no existing waffle flag applies.
BREAKING CHANGE: Operators who do not want the new React-based Markdown editor
to be shown should create a flag contentstore.use_react_markdown_editor with
the value "No".
We plan to backport this to Teak.
Prior art for flipping waffles like this: 9b0024376a
Part of: https://github.com/openedx/platform-roadmap/issues/384
Co-authored-by: Muhammad Anas <muhammad.anas@arbisoft.com>
Django stubs by default doesn't pin mypy but has an extras that does
properly pin it to versions that are compatible. For us it doesn't make
sense to not use this extra as we will always need a version of Mypy
that works with djnago-stubs.
When it was located at the root of the project, it was sometimes not
getting loaded correctly since the root of the project is not a python
module, and producing the following error:
```
Command line or configuration file:1:0: E0013: Plugin 'pylint_django_settings' is impossible to load, is it installed ? ('No module named 'pylint_django_settings'') (bad-plugin-value)
```
This led all the pylint tests to fail.
This started happening more as we updated other dependencies via make
upgrade for some reason and led to inconsistent builds. The move should
hopefully make the loading reliable and consistent.
- Adds the subsections dict in the search index to be used by units
- Adds the sections dict in the search index to be used by sections.
- Rename `get_containers_contains_component` to `get_containers_contains_item` and add support to subsections/sections
- Call `CONTENT_OBJECT_ASSOCIATIONS_CHANGED` for sections and subsections in `update_container_children`
Currently when the ENABLE_COMPLETION_TRACKING_SWITCH waffle switch is disabled
the frontend doesn't take it into account and still displays completion for
anything that was already completed.
This PR adds the ENABLE_COMPLETION_TRACKING_SWITCH to sidebar toggles api so
the frontend can leverage it.
This PR adds a new event that is emit when a celebration/streak is being recorded. This event will allow better analytics around learner engagement in their courses for OeX instances that have the milestones celebration feature enabled.