The CourseQualityView used to call edx-val's get_video_for_course(),
which would return a fully serialized data structure that included all
encodings and inefficiently serialized them with many n+1 queries. This
is tolerable in a paginated web view, but not when pulling all of a
large courses's videos at once.
Making this change collapsed the number of queries for a large sample
MIT course from over 3000 down to 1.
This change disables the profiling panel for performance reasons. It's
rarely useful anyway, given the lack of granularity in the data it
displays.
This commit also enables the Cache panel, which is import for tracking
where we're making excessive calls to redis/memcached.
This is a pure refactoring of lms/envs/production.py, removing several
redundant statements that have accrued over the years as the platform moved
from python-only, to python+json, to python+json+yaml, to today's python+yaml
setup.
Notes on some of the more involved refactorings:
* AWS Locals Load block is handled by the YAML loading at the very top, we
don't need to re-load it since there were no changes to those settings
between the YAML loading at the top and this section.
* MKTG_URL_OVERRIDES, we drop doing any overrides and remove it from the merge
list beacuse the default value in
lms/envs/common.py is empty. So the update is a no-op and is the same as just
loading this data directly from the YAML config.
* CODE_JAIL block, we've been overriding the entire dict if it is in your YAML
config, so then going through and updating the individual values is not necessary.
* SSL_AUTH_EMAIL_DOMAIN and SSL_AUTH_DN_FORMAT_STRING are not used anywhere in
the openedx org, looks like they were used by the old `dashboard` djangoapp
and can probably be deleted but might be used by plugins so not removing for
now to keep the change backward compatible.
* DEFAULT_FILE_STORAGE, previously two of the braches were no-ops so we only
keep the one branch we need for when we want to update DEFAULT_FILE_STORAGE
automatically if AWS keys are set.
Somewhat related to: https://github.com/openedx/open-edx-proposals/issues/587
Co-Authored-By: Feanil Patel <feanil@axim.org>
Updates to support studio_view (editors) in xblock_v2 iframe.
- Send a message when cancel button is clicked on xblock_v2 iframe only in studio_view
- Send a message when save.end event is notified on xblock_v2 iframe.
- Send notify function in runtime. This is to avoid errors when saving the Xblock
This introduces improvements for XBlock interactions within iframes:
* Add default styles for Library Content that renders in the iframe in the new Studio unit page
* When the `isIframeEmbed` option is enabled, the XBlock sends a `postMessage` to the parent window. When sending such a message, the standard link transition is cancelled and the transition is carried out in the MFE.
Updates the StudioHome API's allow_to_create_new_org to require both organization-creation permissions and ORGANIZATION_AUTOCREATE to be enabled. It also adds the list of "allowed organizations for libraries" to the Studio Home API so that the Authoring MFE can use it.
This is part of the effort to support the new Studio Unit Page embedded in the authoring MFE. It introduces several changes to improve the handling of XBlock events and the user interface in the CMS. The most important changes include adding event listeners for message handling, refining the postMessage logic, and updating the CSS for better visual consistency.
fix: Log all learner transmission records.
Commit generated by workflow `openedx/edx-platform/.github/workflows/upgrade-one-python-dependency.yml@refs/heads/master`
Co-authored-by: zamanafzal <11922730+zamanafzal@users.noreply.github.com>
Co-authored-by: Zaman Afzal <zamanafzal@gmail.com>
This iterates on https://github.com/openedx/edx-platform/pull/36089, which
logged us into DockerHub during unit tests in order to reduce how often
DockerHub rate-limits us.
Forks will fail to log into DockerHub unless the fork owner configures their
own DockerHub creds. This PR is an attempt to make it so that unit tests don't
fail when DockerHub login fails.
We're being rate limited by dockerhub for pulling too many images in CI.
There isn't a greate solution for caching images for GH actions, but in
theory we should have less strict limits as an authenticated user.
The latest version replaces pyjwkset with the pyjwt package
Commit generated by workflow `openedx/edx-platform/.github/workflows/upgrade-one-python-dependency.yml@refs/heads/master`
Co-authored-by: alangsto <46360176+alangsto@users.noreply.github.com>
Includes some new Request type annotations in openedx.core.types.http,
plus a new meta-utility @type_annotation_only to ensure that we don't
accidentally start instantiating those new classes.
Rather than constraining django-stubs' major version to our django
major version (4.x.x), we are going to go one ahead (5.x.x), as
recommended by https://github.com/python/mypy/issues/17958
Also includes an unrelated common_constraints update.
The latest version replaces pyjwkset with the pyjwt package
Commit generated by workflow `openedx/edx-platform/.github/workflows/upgrade-one-python-dependency.yml@refs/heads/master`
Co-authored-by: alangsto <46360176+alangsto@users.noreply.github.com>