The openedx-learning repo was recently refactored to consolidate its authoring apps into a single openedx_content app: https://github.com/openedx/openedx-platform/pull/37924 This commit makes the following changes to accommodate this: - Bumps the openedx-learning version to 0.31.0 to get the changes. - Creates new migrations in content_libraries, contentstore, and modulestore_migrator to foreign key references to authoring apps to point to the new openedx_content app. This is done without actually making database changes, since the openedx_content app models are taking over the existing tables that the authoring apps once pointed to. - Creates new squashed migrations in these apps that create these foreign keys to reference openedx_content app models from the start. The full rationale for how and why this was done is in the following openedx-learning ADR: https://github.com/openedx/openedx-learning/blob/main/docs/decisions/0020-merge-authoring-apps-into-openedx-content.rst These migrations should run fine from either a from-scratch scenario (i.e. a new install or CI), or when upgrading from an Ulmo-or-later database state. If you have a database state that comes from the middle of the Ulmo development cycle (e.g. October 2025), you may encounter migration errors in content_libraries, contentstore, or modulestore_migrator, with an error message complaining about missing tables. If you receive this message, run the following command: python manage.py lms migrate openedx_content 0001 Then try to run the migrations for the app that failed. Repeat if necessary for multiple apps.
openedx ------- This directory (openedx) should contain code that is used by both `LMS <https://github.com/openedx/edx-platform/tree/master/lms>`_ and `CMS <https://github.com/openedx/edx-platform/tree/master/cms>`_. If your code is specific to LMS or CMS, put it in those directories instead. Like openedx, the directory `common <https://github.com/openedx/edx-platform/tree/master/common>`_ also contains code used by both LMS and CMS. At some point we'll merge the two. Lastly, the directory `xmodule <https://github.com/openedx/edx-platform/tree/master/xmodule>`_ contains legacy core code, also used by both LMS and CMS. We're in the middle of a long process of phasing that code out. Don't add new code there.