Open edX Ulmo Developer & Operator Release Notes#
These are the developer & operator release notes for the Ulmo release, the 21st community release of the Open edX Platform, spanning changes from April 25, 2025 to October 30, 2025. You can also review details about Open edX Platform Release Notes or learn more about the Open edX Platform.
To view the end-user facing docs, see the Open edX Ulmo Release - Product Release Notes.
Breaking Changes#
The
VERIFY_STUDENT["STORAGE_CLASS"]configuration used for the_storageproperty in theSoftwareSecurePhotoVerificationclass is being deprecated in favor of the modernSTORAGESdictionary introduced in Django 4.2.The updated implementation prioritizes the
STORAGES["verify_student"]backend. If this is not defined, it falls back to the legacyVERIFY_STUDENT["STORAGE_CLASS"]configuration for backward compatibility.Breaking change: Previously, the legacy setting defaulted to
storages.backends.s3boto3.S3Boto3Storage. Now, it defaults to the global default storage instead. See feat: deprecate get_storage_class in core/storage.py.There is a change to the session_inactivity_timeout middleware. A new setting,
SESSION_ACTIVITY_SAVE_DELAY_SECONDS, has been added with a default value of 15 minutes.This new setting modifies how the system handles the
SessionInactivityTimeout. It prevents the session ID from changing with every request, which improves efficiency, while still correctly enforcing the session timeout. While this change resolves an existing issue, itâs considered a âbreaking changeâ to highlight the fact that the default behavior of the applicationâs session middleware has been altered. The new default is a reasonable starting point, but itâs important for to be aware of the change.For more context fix!: session ID stability while maintaining inactivity timeout.
Deprecations & Removals#
newrelicas a baseline Python dependency in Django IDAsAudience: Deployers who use New Relic for Python-based observability, or who have custom IDA code directly referencing the newrelic Python package.
Action: If you use New Relic from Python, ensure that you install the newrelic Python package, as it will no longer be installed by default.
Nothing else is changing with respect to New Relic support at this time; edx-django-utils continues to support New Relic telemetry (and even defaults to using it, if the package is present). For more context: [DEPR]: newrelic as baseline dependency in Django IDAs
The variable
CSRF_TRUSTED_ORIGINS_WITH_SCHEMES, added during the Django 3.2 to 4.2 upgrade, has been completely removed. Operators should replace any use of this setting withCSRF_TRUSTED_ORIGINS.The
cs_comments_servicehas been archived, and all calls to it have been removed fromedx-platform. The MongoDB backend forforumsis still supported via the new forums app through the Ulmo release, so no forums data migration is required for this release, but it is highly advised. We will not support serving forums data from MongoDB in Verawood. For more operational and migration details, please see the Administration section of the forum repo README.The
PROFILE_IMAGE_BACKENDsetting will be replaced with theprofile_imagestorage class defined in theSTORAGESsetting. For Ulmo it will still fall back to the values set in thePROFILE_IMAGE_BACKENDsetting but it is recommended that you migrate to the profile_image setting inSTORAGESnow that it available. ThePROFILE_IMAGE_BACKENDsetting could be dropped as early as Verawood. See feat!: upgrade code and fix get_storage_class.The
COURSE_METADATA_EXPORT_STORAGEsetting will be replaced with thecourse_metadata_exportstorage class defined in theSTORAGESsetting. For Ulmo it will still fall back to the values set in theCOURSE_METADATA_EXPORT_STORAGEsetting but it is recommended that you migrate to the course_metadata_export setting inSTORAGESnow that it available. TheCOURSE_METADATA_EXPORT_STORAGEsetting could be dropped as early as Verawood. See feat: removing get_storage_class from COURSE_METADATA_EXPORT_STORAGE.The
USER_TASKS_ARTIFACT_STORAGEsetting is being deprecated in favor of the modernSTORAGESdictionary introduced in Django 4.2.This update changes the logic to first look for a storage backend defined under
STORAGES["user_task_artifacts"]. If not found, it will fall back to the previously supportedUSER_TASKS_ARTIFACT_STORAGEsetting via the optionalimport_pathparameter.It is recommended that you migrate to using the user_task_artifacts storage in the
STORAGESdictionary. The legacyUSER_TASKS_ARTIFACT_STORAGEsetting may be removed as early as the Verawood release. See Fixing get_storage functionality as per new django52.The
SGA_STORAGE_SETTINGSconfiguration is being deprecated in favor of the modernSTORAGESdictionary introduced in Django 4.2. This update prioritizes theSTORAGES["sga_storage"]backend. If not defined, it falls back to the legacySGA_STORAGE_SETTINGSfor backward compatibility. It is recommended to migrate to theSTORAGES-based configuration.Support for
SGA_STORAGE_SETTINGSmay be removed as early as the Verawood release. See feat!: Adding django52 support.In Credentials, the
DEFAULT_FILE_STORAGEandSTATICFILES_STORAGEsettings are being deprecated in favor of the modernSTORAGESdictionary introduced in Django 4.2.The
SEND_CATALOG_INFOsetting has been removed. The behavior is now as if the settings is permanently set toTrue. See feat: Remove the SEND_CATALOG_INFO_SIGNAL toggle.
Aspects Analytics#
Upgrading to Aspects v2.5.1 will give you the latest Aspects functionality with Ulmo. See the upgrade instructions here: How-to Upgrade Aspects.
Then run this to update materialized views that have new/removed columns:
tutor local do dbt --only_changed False -c 'run --full-refresh --select dim_learner_last_response dim_problem_results problem_events dim_subsection_problem_results'
Administrators & Operators#
A new Catalog MFE is optionally available in Ulmo.1. See the Catalog release notes for more information about the catalog, and the Catalog README for information about how to enable this on your instance.
For Libraries, access control is now represented as explicit, library scoped roles that are evaluated through the AuthZ service. These roles are mapped to permission sets that control what users can do in a given library, centralizing how roles and permissions are defined, stored and enforced, while keeping behavior aligned with the previous release. See Roles and Permissions in Libraries for more information.
A
getExternalLinkUrlfunction is provided inconfig.jswhich can be used to override default external links in MFEs. To make use of this function, provide an object that maps default links to custom links. This object should be added to the config object defined in theenv.config.[js,jsx,ts,tsx], and must be namedexternalLinkUrlOverrides. See the frontend-platform README.SAML Configuration Version Alignment Update
A fix has been implemented to ensure that all SAML provider configurations always reference the latest version of the SAML configuration. Previously, some providers continued pointing to outdated versions after updates, causing inconsistencies. With this change, provider configurations will automatically align with the newest SAML configuration version, eliminating the need for manual updates and ensuring consistent authentication behavior.
A new management command is included to verify alignment:
./manage.py lms saml --run-check
Temporary feature toggle added:
ENABLE_SAML_CONFIG_SIGNAL_HANDLERSmust be enabled to activate this behavior.
Added Settings#
- +LEARNING_MICROFRONTEND_URL: openedx/envs/common.py (line 1532)
Default value = None
Description: Base URL of the micro-frontend-based courseware page.
- +LOGIN_REDIRECT_WHITELIST: openedx/envs/common.py (line 1204)
Default value = âempty list ([])â
Description: While logout, if logout request has a redirect-url as query strings, [output truncated, see link for full description]
- +MAX_FAILED_LOGIN_ATTEMPTS_ALLOWED: openedx/envs/common.py (line 1898)
Default value = 6
Description: Specifies the maximum failed login attempts allowed to users. Once the user reaches this [output truncated, see link for full description]
- +MAX_FAILED_LOGIN_ATTEMPTS_LOCKOUT_PERIOD_SECS: openedx/envs/common.py (line 1907)
Default value = â30 * 60â
Description: Specifies the lockout period in seconds for consecutive failed login attempts. Once the user [output truncated, see link for full description]
- +PARENTAL_CONSENT_AGE_LIMIT: openedx/envs/common.py (line 1336)
Default value = 13
Description: The age at which a learner no longer requires parental consent, [output truncated, see link for full description]
- +PLATFORM_NAME: openedx/envs/common.py (line 619)
Default value = âYour Platform Name Hereâ
Description: The display name of the platform to be used in [output truncated, see link for full description]
- +PREPEND_LOCALE_PATHS: openedx/envs/common.py (line 2327)
Default value = â[]â
Description: A list of the paths to locale directories to load first e.g. [output truncated, see link for full description]
- +REGISTRATION_EMAIL_PATTERNS_ALLOWED: openedx/envs/common.py (line 1364)
Default value = None
Description: Optional setting to restrict registration / account creation [output truncated, see link for full description]
- +REGISTRATION_RATELIMIT: openedx/envs/common.py (line 502)
Default value = â60/7dâ
Description: New users are registered on edx via RegistrationView. [output truncated, see link for full description]
- +REGISTRATION_VALIDATION_RATELIMIT: openedx/envs/common.py (line 493)
Default value = â30/7dâ
Description: Whenever a user tries to register on edx, the data entered during registration [output truncated, see link for full description]
- +RETIRED_EMAIL_DOMAIN: openedx/envs/common.py (line 2101)
Default value = âretired.invalidâ
Description: Set the domain part of hashed emails for retired users. Used by the derived [output truncated, see link for full description]
- +RETIRED_EMAIL_FMT: openedx/envs/common.py (line 2114)
Default value = âretired__user_{}@retired.invalidâ
Description: Set the format a retired user email field gets transformed into, where {} is [output truncated, see link for full description]
- +RETIRED_EMAIL_PREFIX: openedx/envs/common.py (line 2095)
Default value = âretired__user_â
Description: Set the prefix part of hashed emails for retired users. Used by the derived [output truncated, see link for full description]
- +RETIRED_USERNAME_FMT: openedx/envs/common.py (line 2107)
Default value = âretired__user_{}â
Description: Set the format a retired user username field gets transformed into, where {} [output truncated, see link for full description]
- +RETIRED_USERNAME_PREFIX: openedx/envs/common.py (line 2089)
Default value = âretired__user_â
Description: Set the prefix part of hashed usernames for retired users. Used by the derived [output truncated, see link for full description]
- +RETIRED_USER_SALTS: openedx/envs/common.py (line 2121)
Default value = â[âabcâ, â123â]â
Description: Set a list of salts used for hashing usernames and emails on users retirement.
- +RETIREMENT_SERVICE_WORKER_USERNAME: openedx/envs/common.py (line 2129)
Default value = âRETIREMENT_SERVICE_USERâ
Description: Set the username of the retirement service worker user. Retirement scripts [output truncated, see link for full description]
- +RETIREMENT_STATES: openedx/envs/common.py (line 2135)
Default value = âRETIREMENT_SERVICE_USERâ
Description: Set a list that defines the name and order of states for the retirement [output truncated, see link for full description]
- +STATIC_URL_BASE: openedx/envs/common.py (line 2315)
Default value = ââNoneââ
Description: The LMS and CMS use this to construct
STATIC_URLby appending [output truncated, see link for full description]
- +XBLOCK_EXTRA_MIXINS: openedx/envs/common.py (line 1637)
Default value = â()â
Description: Custom mixins that will be dynamically added to every XBlock and XBlockAside instance. [output truncated, see link for full description]
- +XBLOCK_FIELD_DATA_WRAPPERS: openedx/envs/common.py (line 1644)
Default value = â()â
Description: Paths to wrapper methods which should be applied to every XBlockâs FieldData.
- +XBLOCK_FIELD_DATA_WRAPPERS: openedx/envs/common.py (line 1660)
Default value = âdefaultâ
Description: The django cache key of the cache to use for storing anonymous user state for XBlocks.
- +XBLOCK_SETTINGS: openedx/envs/common.py (line 1652)
Default value = â{}â
Description: Dictionary containing server-wide configuration of XBlocks on a per-type basis. [output truncated, see link for full description]
- +CATALOG_MICROFRONTEND_URL: lms/envs/common.py (line 3218)
Default value = None
Description: Base URL of the micro-frontend-based course catalog page.
- +CCX_MAX_STUDENTS_ALLOWED: lms/envs/common.py (line 2983)
Default value = 200
Description: Maximum number of students allowed in a CCX (Custom Courses for edX), This is an arbitrary [output truncated, see link for full description]
- +CELERY_EXTRA_IMPORTS: lms/envs/common.py (line 1958)
Default value = â[]â
Description: Adds extra packages that donât get auto-imported (Example: XBlocks). [output truncated, see link for full description]
- +CONTENT_FOR_SPAM_POSTS: lms/envs/common.py (line 3228)
Default value = ââââ
Description: Content to replace spam posts with
- +COURSE_MEMBER_API_ENROLLMENT_LIMIT: lms/envs/common.py (line 2918)
Default value = 1000
Description: This limits the response size of the get_course_members API, throwing an exception [output truncated, see link for full description]
- +DISABLED_ORGS_FOR_PROGRAM_NUDGE: lms/envs/common.py (line 3502)
Default value = â[]â
Description: List of organization codes that should be disabled
- +DISCUSSION_SPAM_URLS: lms/envs/common.py (line 3223)
Default value = â[]â
Description: Urls to filter from discussion content to avoid spam
- +HIBP_LOGIN_BLOCK_PASSWORD_FREQUENCY_THRESHOLD: lms/envs/common.py (line 3291)
Default value = 5.0
Description: Log10 threshold in effect for ENABLE_AUTHN_LOGIN_BLOCK_HIBP_POLICY. [output truncated, see link for full description]
- +HIBP_LOGIN_NUDGE_PASSWORD_FREQUENCY_THRESHOLD: lms/envs/common.py (line 3267)
Default value = 3.0
Description: Log10 threshold in effect for ENABLE_AUTHN_LOGIN_NUDGE_HIBP_POLICY. [output truncated, see link for full description]
- +HIBP_REGISTRATION_PASSWORD_FREQUENCY_THRESHOLD: lms/envs/common.py (line 3252)
Default value = 3.0
Description: Log10 threshold in effect for ENABLE_AUTHN_REGISTER_HIBP_POLICY. [output truncated, see link for full description]
- +LTI_CUSTOM_PARAMS: lms/envs/common.py (line 2953)
Default value = â[]â
Description: This expands the list of optional LTI parameters that the [output truncated, see link for full description]
- +PROFILE_INFORMATION_REPORT_PRIVATE_FIELDS: lms/envs/common.py (line 2795)
Default value = â[âyear_of_birthâ]â
Description: List of private fields that will be hidden from the profile information report.
- +PYTHON_LIB_FILENAME: lms/envs/common.py (line 1180)
Default value = âpython_lib.zipâ
Description: Name of the course file to make available to code in [output truncated, see link for full description]
- +RECAPTCHA_PRIVATE_KEY: lms/envs/common.py (line 3637)
Default value = âempty stringâ
Description: Add recaptcha private key to use captcha feature in discussion app.
- +RECAPTCHA_PROJECT_ID: lms/envs/common.py (line 3659)
Default value = None
Description: Add recaptcha project id to use captcha feature in discussion app.
- +RECAPTCHA_SITE_KEYS: lms/envs/common.py (line 3642)
Default value = âempty dictionaryâ
Description: Add recaptcha site keys to use captcha feature in discussion app.
- +DEFAULT_ORG_LOGO_URL: cms/envs/common.py (line 1787)
Default value = âDerived(lambda settings: settings.STATIC_URL + âimages/logo.pngâ)â
Description: The default logo url for organizations that do not have a logo set.
Removed Settings#
- -CCX_MAX_STUDENTS_ALLOWED: lms/envs/common.py (line 4522)
Description: Maximum number of students allowed in a CCX (Custom Courses for edX), This is an arbitrary [output truncated, see link for full description]
- -CELERY_EXTRA_IMPORTS: lms/envs/common.py (line 2825)
Description: Adds extra packages that donât get auto-imported (Example: XBlocks). [output truncated, see link for full description]
- -COURSE_MEMBER_API_ENROLLMENT_LIMIT: lms/envs/common.py (line 4396)
Description: This limits the response size of the get_course_members API, throwing an exception [output truncated, see link for full description]
- -DISABLED_ORGS_FOR_PROGRAM_NUDGE: lms/envs/common.py (line 5390)
Description: List of organization codes that should be disabled
- -LEARNING_MICROFRONTEND_URL: lms/envs/common.py (line 5032)
Description: Base URL of the micro-frontend-based courseware page.
- -LOGIN_REDIRECT_WHITELIST: lms/envs/common.py (line 3692)
Description: While logout, if logout request has a redirect-url as query strings, [output truncated, see link for full description]
- -MAX_FAILED_LOGIN_ATTEMPTS_ALLOWED: lms/envs/common.py (line 3835)
Description: Specifies the maximum failed login attempts allowed to users. Once the user reaches this [output truncated, see link for full description]
- -MAX_FAILED_LOGIN_ATTEMPTS_LOCKOUT_PERIOD_SECS: lms/envs/common.py (line 3844)
Description: Specifies the lockout period in seconds for consecutive failed login attempts. Once the user [output truncated, see link for full description]
- -PLATFORM_NAME: lms/envs/common.py (line 76)
Description: The display name of the platform to be used in [output truncated, see link for full description]
- -PREPEND_LOCALE_PATHS: lms/envs/common.py (line 4594)
Description: A list of the paths to locale directories to load first e.g. [output truncated, see link for full description]
- -REGISTRATION_RATELIMIT: lms/envs/common.py (line 3446)
Description: New users are registered on edx via RegistrationView. [output truncated, see link for full description]
- -REGISTRATION_VALIDATION_RATELIMIT: lms/envs/common.py (line 3437)
Description: Whenever a user tries to register on edx, the data entered during registration [output truncated, see link for full description]
- -RETIRED_EMAIL_DOMAIN: lms/envs/common.py (line 4924)
Description: Set the domain part of hashed emails for retired users. Used by the derived [output truncated, see link for full description]
- -RETIRED_EMAIL_FMT: lms/envs/common.py (line 4935)
Description: Set the format a retired user email field gets transformed into, where {} is [output truncated, see link for full description]
- -RETIRED_EMAIL_PREFIX: lms/envs/common.py (line 4919)
Description: Set the prefix part of hashed emails for retired users. Used by the derived [output truncated, see link for full description]
- -RETIRED_USERNAME_FMT: lms/envs/common.py (line 4929)
Description: Set the format a retired user username field gets transformed into, where {} [output truncated, see link for full description]
- -RETIRED_USERNAME_PREFIX: lms/envs/common.py (line 4913)
Description: Set the prefix part of hashed usernames for retired users. Used by the derived [output truncated, see link for full description]
- -RETIRED_USER_SALTS: lms/envs/common.py (line 4941)
Description: Set a list of salts used for hashing usernames and emails on users retirement.
- -RETIREMENT_SERVICE_WORKER_USERNAME: lms/envs/common.py (line 4948)
Description: Set the username of the retirement service worker user. Retirement scripts [output truncated, see link for full description]
- -RETIREMENT_STATES: lms/envs/common.py (line 4954)
Description: Set a list that defines the name and order of states for the retirement [output truncated, see link for full description]
- -XBLOCK_EXTRA_MIXINS: lms/envs/common.py (line 1652)
Description: Custom mixins that will be dynamically added to every XBlock and XBlockAside instance. [output truncated, see link for full description]
- -XBLOCK_FIELD_DATA_WRAPPERS: lms/envs/common.py (line 1659)
Description: Paths to wrapper methods which should be applied to every XBlockâs FieldData.
- -XBLOCK_FIELD_DATA_WRAPPERS: lms/envs/common.py (line 1675)
Description: The django cache key of the cache to use for storing anonymous user state for XBlocks.
- -XBLOCK_SETTINGS: lms/envs/common.py (line 1667)
Description: Dictionary containing server-wide configuration of XBlocks on a per-type basis. [output truncated, see link for full description]
- -CODE_JAIL_REST_SERVICE_CONNECT_TIMEOUT: cms/envs/common.py (line 1197)
Description: Set the number of seconds CMS will wait to establish an internal [output truncated, see link for full description]
- -CODE_JAIL_REST_SERVICE_HOST: cms/envs/common.py (line 1193)
Description: Set the codejail remote service host
- -CODE_JAIL_REST_SERVICE_READ_TIMEOUT: cms/envs/common.py (line 1201)
Description: Set the number of seconds CMS will wait for a response from the [output truncated, see link for full description]
- -CODE_JAIL_REST_SERVICE_REMOTE_EXEC: cms/envs/common.py (line 1188)
Description: Set the python package.module.function that is reponsible of [output truncated, see link for full description]
- -COMPREHENSIVE_THEME_DIRS: cms/envs/common.py (line 2178)
Description: A list of paths to directories, each of which will [output truncated, see link for full description]
- -COMPREHENSIVE_THEME_LOCALE_PATHS: cms/envs/common.py (line 2186)
Description: See LMS annotation. [output truncated, see link for full description]
- -CUSTOM_RESOURCE_TEMPLATES_DIRECTORY: cms/envs/common.py (line 2211)
Description: Path to an existing directory of YAML files containing [output truncated, see link for full description]
- -DEFAULT_SITE_THEME: cms/envs/common.py (line 2198)
Description: See LMS annotation.
- -PREPEND_LOCALE_PATHS: cms/envs/common.py (line 2192)
Description: A list of the paths to locale directories to load first e.g. [output truncated, see link for full description]
- -XBLOCK_EXTRA_MIXINS: cms/envs/common.py (line 1006)
Description: Custom mixins that will be dynamically added to every XBlock and XBlockAside instance. [output truncated, see link for full description]
- -XBLOCK_EXTRA_MIXINS: cms/envs/common.py (line 1016)
Description: The django cache key of the cache to use for storing anonymous user state for XBlocks.
Added Feature Toggles#
- +ALLOW_PUBLIC_ACCOUNT_CREATION: openedx/envs/common.py (line 884)
Default value = True
Description: Desc: Allow public account creation. If this is disabled, users will no longer have access to [output truncated, see link for full description]
- +AUTOMATIC_AUTH_FOR_TESTING: openedx/envs/common.py (line 720)
Default value = False
Description: Desc: Set to True to perform acceptance and load test. Auto auth view is responsible for load [output truncated, see link for full description]
- +BADGES_ENABLED: openedx/envs/common.py (line 1022)
Default value = False
Description: Desc: Set to True to enable badges functionality.
- +CERTIFICATES_HTML_VIEW: openedx/envs/common.py (line 805)
Default value = False
Description: Desc: Set to True to enable course certificates on your instance of Open edX.
- +DISABLE_START_DATES: openedx/envs/common.py (line 631)
Default value = False
Description: Desc: When True, all courses will be active, regardless of start [output truncated, see link for full description]
- +DISABLE_UNENROLLMENT: openedx/envs/common.py (line 1001)
Default value = False
Description: Desc: Set to True to disable self-unenrollments via REST API. [output truncated, see link for full description]
- +EDX_DRF_EXTENSIONS[ENABLE_JWT_AND_LMS_USER_EMAIL_MATCH]: .venv/lib/python3.11/site-packages/edx_rest_framework_extensions/config.py (line 19)
Default value = False
Description: Desc: Toggle to add a check for matching user email in JWT and LMS user email [output truncated, see link for full description]
- +EDX_DRF_EXTENSIONS[ENABLE_SET_REQUEST_USER_FOR_JWT_COOKIE]: .venv/lib/python3.11/site-packages/edx_rest_framework_extensions/config.py (line 5)
Default value = False
Description: Desc: Toggle for setting request.user with jwt cookie authentication. This makes the JWT cookie [output truncated, see link for full description]
- +EMBARGO: openedx/envs/common.py (line 744)
Default value = False
Description: Desc: Turns on embargo functionality, which blocks users from [output truncated, see link for full description]
- +ENABLE_CHANGE_USER_PASSWORD_ADMIN: openedx/envs/common.py (line 931)
Default value = False
Description: Desc: Set to True to enable changing a user password through django admin. This is disabled by [output truncated, see link for full description]
- +ENABLE_CREDIT_ELIGIBILITY: openedx/envs/common.py (line 1031)
Default value = True
Description: Desc: When enabled, it is possible to define a credit eligibility criteria in the CMS. A âCredit [output truncated, see link for full description]
- +ENABLE_CSMH_EXTENDED: openedx/envs/common.py (line 862)
Default value = True
Description: Desc: Write Courseware Student Module History (CSMH) to the extended table: this logs all [output truncated, see link for full description]
- +ENABLE_DISCUSSION_SERVICE: openedx/envs/common.py (line 644)
Default value = True
Description: Desc: When True, it will enable the Discussion tab in courseware for all courses. Setting this [output truncated, see link for full description]
- +ENABLE_GRADING_METHOD_IN_PROBLEMS: openedx/envs/common.py (line 1013)
Default value = False
Description: Desc: Enables the grading method feature in capa problems.
- +ENABLE_HELP_LINK: openedx/envs/common.py (line 683)
Default value = True
Description: Desc: When True, a help link is displayed on the main navbar. Set False to hide it.
- +ENABLE_INTEGRITY_SIGNATURE: openedx/envs/common.py (line 968)
Default value = False
Description: Desc: Whether to display honor code agreement for learners before their first grade assignment.
- +ENABLE_LTI_PII_ACKNOWLEDGEMENT: openedx/envs/common.py (line 979)
Default value = False
Description: Desc: Enables the lti pii acknowledgement feature for a course
- +ENABLE_MKTG_SITE: openedx/envs/common.py (line 758)
Default value = False
Description: Desc: Toggle to enable alternate urls for marketing links.
- +ENABLE_OAUTH2_PROVIDER: openedx/envs/common.py (line 668)
Default value = False
Description: Desc: Enable this feature to allow this Open edX platform to be an OAuth2 authentication [output truncated, see link for full description]
- +ENABLE_ORA_ALL_FILE_URLS: openedx/envs/common.py (line 943)
Default value = False
Description: Desc: A âwork-aroundâ feature toggle meant to help in cases where some file uploads are not [output truncated, see link for full description]
- +ENABLE_ORA_USER_STATE_UPLOAD_DATA: openedx/envs/common.py (line 956)
Default value = False
Description: Desc: A âwork-aroundâ feature toggle meant to help in cases where some file uploads are not [output truncated, see link for full description]
- +ENABLE_PASSWORD_RESET_FAILURE_EMAIL: openedx/envs/common.py (line 906)
Default value = False
Description: Desc: Whether to send an email for failed password reset attempts or not. This happens when a [output truncated, see link for full description]
- +ENABLE_SAML_CONFIG_SIGNAL_HANDLERS: common/djangoapps/third_party_auth/toggles.py (line 21)
Default value = False
Description: Desc: Controls whether SAML configuration signal handlers are active. [output truncated, see link for full description]
- +ENABLE_SPECIAL_EXAMS: openedx/envs/common.py (line 827)
Default value = False
Description: Desc: Enable to use special exams, aka timed and proctored exams.
- +ENABLE_TEXTBOOK: openedx/envs/common.py (line 657)
Default value = True
Description: Desc: Add PDF and HTML textbook tabs to the courseware.
- +EVENT_BUS_KAFKA_AUDIT_LOGGING_ENABLED: .venv/lib/python3.11/site-packages/edx_event_bus_kafka/internal/utils.py (line 16)
Default value = True
Description: Desc: If True, whenever an event is produced or consumed, log enough [output truncated, see link for full description]
- +EVENT_BUS_KAFKA_CONSUMERS_ENABLED: .venv/lib/python3.11/site-packages/edx_event_bus_kafka/internal/consumer.py (line 44)
Default value = True
Description: Desc: If set to False, consumer will exit immediately. This can be used as an emergency kill-switch [output truncated, see link for full description]
- +EVENT_BUS_REDIS_AUDIT_LOGGING_ENABLED: .venv/lib/python3.11/site-packages/edx_event_bus_redis/internal/utils.py (line 16)
Default value = True
Description: Desc: If True, whenever an event is produced or consumed, log enough [output truncated, see link for full description]
- +EVENT_BUS_REDIS_CONSUMERS_ENABLED: .venv/lib/python3.11/site-packages/edx_event_bus_redis/internal/consumer.py (line 26)
Default value = True
Description: Desc: If set to False, consumer will exit immediately. This can be used as an emergency kill-switch [output truncated, see link for full description]
- +FEATURES[âENABLE_ENHANCED_STAFF_GRADERâ]: .venv/lib/python3.11/site-packages/openassessment/xblock/config_mixin.py (line 161)
Default value = False
Description: Desc: Set to True to enable the enhanced staff grader feature
- +FEATURES[âENABLE_ORA_MOBILE_SUPPORTâ]: .venv/lib/python3.11/site-packages/openassessment/xblock/config_mixin.py (line 131)
Default value = False
Description: Desc: Set to True to enable the ORA2 Xblock to be rendered [output truncated, see link for full description]
- +FEATURES[âENABLE_ORA_PEER_CONFIGURABLE_GRADINGâ]: .venv/lib/python3.11/site-packages/openassessment/xblock/config_mixin.py (line 191)
Default value = False
Description: Desc: Enable configurable grading for peer review.
- +FEATURES[âENABLE_ORA_RUBRIC_REUSEâ]: .venv/lib/python3.11/site-packages/openassessment/xblock/config_mixin.py (line 146)
Default value = False
Description: Desc: Set to True to enable the reuse of rubric feature
- +FEATURES[âENABLE_ORA_SELECTABLE_LEARNER_WAITING_REVIEWâ]: .venv/lib/python3.11/site-packages/openassessment/xblock/config_mixin.py (line 175)
Default value = False
Description: Desc: Enable selectable learner in the waiting step list ORA2. [output truncated, see link for full description]
- +LICENSING: openedx/envs/common.py (line 795)
Default value = False
Description: Desc: Toggle platform-wide course licensing. The course.license attribute is then used to append [output truncated, see link for full description]
- +RBAC_IGNORE_INVALID_JWT_COOKIE: .venv/lib/python3.11/site-packages/edx_rbac/constants.py (line 7)
Default value = False
Description: Desc: When true, causes instances of jwt.exceptions.InvalidTokenError [output truncated, see link for full description]
- +RESTRICT_AUTOMATIC_AUTH: openedx/envs/common.py (line 732)
Default value = True
Description: Desc: Prevent auto auth from creating superusers or modifying existing users. Auto auth is a [output truncated, see link for full description]
- +SEND_TRACKING_EVENT_EMITTED_SIGNAL: .venv/lib/python3.11/site-packages/eventtracking/config.py (line 8)
Default value = False
Description: Desc: When True, the system will publish TRACKING_EVENT_EMITTED signals to the event bus. The [output truncated, see link for full description]
- +SHOW_FOOTER_LANGUAGE_SELECTOR: openedx/envs/common.py (line 852)
Default value = False
Description: Desc: When set to True, language selector will be visible in the footer.
- +SHOW_HEADER_LANGUAGE_SELECTOR: openedx/envs/common.py (line 836)
Default value = False
Description: Desc: When set to True, language selector will be visible in the header.
- +SHOW_REGISTRATION_LINKS: openedx/envs/common.py (line 894)
Default value = True
Description: Desc: Allow registration links. If this is disabled, users will no longer see buttons to the [output truncated, see link for full description]
- +annotated_flag WaffleFlag(NAMESPACE,âannotated_flagâ) #..toggle_name:course_waffle_annotated_flag CourseWaffleFlag(NAMESPACE,âcourse_waffle_annotated_flagâ) NotAFlag(NAMESPACE,NOT_A_WAFFLE_FLAG) #..wrong_annotation WaffleFlag(NAMESPACE,âflag_with_bad_annotationâ)#=A WaffleFlag(NAMESPACE,FLAG_WITHOUT_ANNOTATION)#=B DerivedWaffleFlag(NAMESPACE,DERIVED_FLAG_WITHOUT_ANNOTATION)#=C WaffleSwitch(NAMESPACE,SWITCH_WITHOUT_ANNOTATION)#=D CourseWaffleFlag(NAMESPACE,COURSE_WAFFLE_FLAG_WITHOUT_ANNOTATION)#=E MissingCourseWithKwarg=CourseWaffleFlag(#=F waffle_namespace=waffle_flags(), flag_name=uâmissing_course_with_kwargâ, ): .venv/lib/python3.11/site-packages/test/plugins/test_annotations_check.py (line 8)
Default value = âNot definedâ
Description: Desc: NaN
- +completion.enable_completion_tracking: .venv/lib/python3.11/site-packages/completion/waffle.py (line 11)
Default value = False
Description: Desc: Indicates whether or not to track completion of individual blocks. Keeping this disabled [output truncated, see link for full description]
- +contentstore.enable_course_optimizer_check_prev_run_links: cms/djangoapps/contentstore/toggles.py (line 600)
Default value = False
Description: Desc: When enabled, allows the Course Optimizer to detect and update links pointing to previous course runs. [output truncated, see link for full description]
- +contentstore.new_studio_mfe.use_new_video_uploads_page: cms/djangoapps/contentstore/toggles.py (line 316)
Default value = False
Description: Desc: This flag enables the use of the new studio video uploads page mfe
- +course_assets.allow_download_code_library: openedx/core/djangoapps/contentserver/views.py (line 274)
Default value = False
Description: Desc: Whether to allow learners to download the course code library [output truncated, see link for full description]
- +course_home.send_course_progress_analytics_for_student: lms/djangoapps/course_home_api/toggles.py (line 39)
Default value = False
Description: Desc: This toggle controls whether the system will enqueue a Celery task responsible for emitting an [output truncated, see link for full description]
- +discussion.enable_captcha: lms/djangoapps/discussion/config/settings.py (line 25)
Default value = False
Description: Desc: When the flag is ON, users will be able to see captcha for discussion
- +discussions.enable_rate_limit: lms/djangoapps/discussion/toggles.py (line 32)
Default value = False
Description: Desc: Waffle flag to enable rate limit on discussions
- +discussions.only_verified_users_can_post: lms/djangoapps/discussion/toggles.py (line 20)
Default value = False
Description: Desc: Waffle flag to allow only verified users to post in discussions
- +drag_and_drop_v2.grading_ignore_decoys: .venv/lib/python3.11/site-packages/drag_and_drop_v2/compat.py (line 10)
Default value = False
Description: Desc: Enables alternative grading for the xblock [output truncated, see link for full description]
- +edx_search.default_elastic_search: .venv/lib/python3.11/site-packages/search/search_engine_base.py (line 10)
Default value = False
Description: Desc: This flag forces the use of ElasticSearch. [output truncated, see link for full description]
- +edxval.override_existing_imported_transcripts: .venv/lib/python3.11/site-packages/edxval/config/waffle.py (line 11)
Default value = False
Description: Desc: Enables overriding existing transcripts when importing courses with already [output truncated, see link for full description]
- +enterprise.TOP_DOWN_ASSIGNMENT_REAL_TIME_LCM: .venv/lib/python3.11/site-packages/enterprise/toggles.py (line 10)
Default value = False
Description: Desc: Enables top-down assignment
- +enterprise.admin_portal_learner_profile_view_enabled: .venv/lib/python3.11/site-packages/enterprise/toggles.py (line 59)
Default value = False
Description: Desc: Enables an admin to view a learnerâs profile
- +enterprise.catalog_query_search_filters_enabled: .venv/lib/python3.11/site-packages/enterprise/toggles.py (line 71)
Default value = False
Description: Desc: Enables filtering search results by catalog queries vs. enterprise-specific attributes.
- +enterprise.edit_highlights_enabled: .venv/lib/python3.11/site-packages/enterprise/toggles.py (line 95)
Default value = False
Description: Desc: Enables the Edit Highlights experience.
- +enterprise.enterprise_admin_onboarding: .venv/lib/python3.11/site-packages/enterprise/toggles.py (line 83)
Default value = False
Description: Desc: Enables the admin onboarding tour on the admin-portal.
- +enterprise.enterprise_customer_support_tool: .venv/lib/python3.11/site-packages/enterprise/toggles.py (line 35)
Default value = False
Description: Desc: Enables the enterprise customer support tool
- +enterprise.enterprise_learner_bff_enabled: .venv/lib/python3.11/site-packages/enterprise/toggles.py (line 47)
Default value = False
Description: Desc: Enables the enterprise learner BFF
- +enterprise.feature_prequery_search_suggestions: .venv/lib/python3.11/site-packages/enterprise/toggles.py (line 22)
Default value = False
Description: Desc: Enables prequery search suggestions
- +forum_v2.enable_mysql_backend: .venv/lib/python3.11/site-packages/forum/toggles.py (line 9)
Default value = False
Description: Desc: Waffle flag to use the MySQL backend instead of Mongo backend.
- +notifications.enable_push_notifications: openedx/core/djangoapps/notifications/config/waffle.py (line 32)
Default value = False
Description: Desc: Waffle flag to enable push Notifications feature on mobile devices
- +settings.ALLOW_ADMIN_ENTERPRISE_COURSE_ENROLLMENT_DELETION: lms/envs/common.py (line 616)
Default value = False
Description: Desc: If true, allows for the deletion of EnterpriseCourseEnrollment records via Django Admin.
- +settings.ALLOW_COURSE_RERUNS: cms/envs/common.py (line 152)
Default value = True
Description: Desc: This will allow staff member to re-run the course from the studio home page and will [output truncated, see link for full description]
- +settings.ALLOW_EMAIL_ADDRESS_CHANGE: lms/envs/common.py (line 522)
Default value = True
Description: Desc: Allow users to change their email address on the Account Settings page. If this is [output truncated, see link for full description]
- +settings.ALWAYS_REDIRECT_HOMEPAGE_TO_DASHBOARD_FOR_AUTHENTICATED_USER: lms/envs/common.py (line 330)
Default value = True
Description: Desc: When a logged in user goes to the homepage (â/â) the user will be redirected to the [output truncated, see link for full description]
- +settings.AUTOMATIC_VERIFY_STUDENT_IDENTITY_FOR_TESTING: lms/envs/common.py (line 269)
Default value = False
Description: Desc: If set to True, then we want to skip posting anything to Software Secure. Bypass posting [output truncated, see link for full description]
- +settings.BADGES_ENABLED: lms/envs/common.py (line 690)
Default value = False
Description: Desc: Set to True to enable badges functionality.
- +settings.COURSES_ARE_BROWSABLE: lms/envs/common.py (line 178)
Default value = True
Description: Desc: When this is set to True, all the courses will be listed on the /courses page and Explore [output truncated, see link for full description]
- +settings.CUSTOM_CERTIFICATE_TEMPLATES_ENABLED: lms/envs/common.py (line 436)
Default value = False
Description: Desc: Set to True to enable custom certificate templates which are configured via Django admin.
- +settings.DEPRECATE_OLD_COURSE_KEYS_IN_STUDIO: cms/envs/common.py (line 176)
Default value = True
Description: Desc: Warn about removing support for deprecated course keys. [output truncated, see link for full description]
- +settings.DISABLE_ADVANCED_SETTINGS: cms/envs/common.py (line 214)
Default value = False
Description: Desc: Set to True to disable the advanced settings page in Studio for all users except those [output truncated, see link for full description]
- +settings.DISABLE_ALLOWED_ENROLLMENT_IF_ENROLLMENT_CLOSED: lms/envs/common.py (line 659)
Default value = False
Description: Desc: Set to True to disable enrollment for user invited to a course
- +settings.DISABLE_COURSE_CREATION: cms/envs/common.py (line 192)
Default value = False
Description: Desc: If set to True, it disables the course creation functionality and hides the âNew Courseâ [output truncated, see link for full description]
- +settings.DISABLE_HONOR_CERTIFICATES: lms/envs/common.py (line 227)
Default value = False
Description: Desc: Set to True to disable honor certificates. Typically used when your installation only [output truncated, see link for full description]
- +settings.DISABLE_LOGIN_BUTTON: lms/envs/common.py (line 158)
Default value = False
Description: Desc: Removes the display of the login button in the navigation bar. [output truncated, see link for full description]
- +settings.DISABLE_MOBILE_COURSE_AVAILABLE: openedx/envs/common.py (line 921)
Default value = False
Description: Desc: Set to True to remove Mobile Course Available UI Flag from Studioâs Advanced Settings [output truncated, see link for full description]
- +settings.DISPLAY_DEBUG_INFO_TO_STAFF: lms/envs/common.py (line 78)
Default value = True
Description: Desc: Add a âStaff Debugâ button to course blocks for debugging [output truncated, see link for full description]
- +settings.DISPLAY_HISTOGRAMS_TO_STAFF: lms/envs/common.py (line 88)
Default value = False
Description: Desc: This displays histograms in the Staff Debug Info panel to course staff.
- +settings.EDITABLE_SHORT_DESCRIPTION: cms/envs/common.py (line 103)
Default value = True
Description: Desc: This feature flag allows editing of short descriptions on the Schedule & Details page in [output truncated, see link for full description]
- +settings.ENABLE_ACCOUNT_DELETION: lms/envs/common.py (line 560)
Default value = True
Description: Desc: Whether to display the account deletion section on Account Settings page. Set to False to [output truncated, see link for full description]
- +settings.ENABLE_AUTHN_MICROFRONTEND: lms/envs/common.py (line 570)
Default value = False
Description: Desc: Supports staged rollout of a new micro-frontend-based implementation of the logistration.
- +settings.ENABLE_BULK_ENROLLMENT_VIEW: lms/envs/common.py (line 532)
Default value = False
Description: Desc: When set to True the bulk enrollment view is enabled and one can use it to enroll multiple [output truncated, see link for full description]
- +settings.ENABLE_BULK_USER_RETIREMENT: lms/envs/common.py (line 625)
Default value = False
Description: Desc: Set to True to enable bulk user retirement through REST API. This is disabled by [output truncated, see link for full description]
- +settings.ENABLE_CATALOG_MICROFRONTEND: lms/envs/common.py (line 582)
Default value = False
Description: Desc: Supports staged rollout of a new micro-frontend-based implementation of the catalog.
- +settings.ENABLE_CERTIFICATES_IDV_REQUIREMENT: lms/envs/common.py (line 649)
Default value = False
Description: Desc: Whether to enforce ID Verification requirements for course certificates generation
- +settings.ENABLE_COMBINED_LOGIN_REGISTRATION_FOOTER: lms/envs/common.py (line 362)
Default value = False
Description: Desc: Display the standard footer in the login page. This feature can be overridden by a site- [output truncated, see link for full description]
- +settings.ENABLE_CONTENT_LIBRARIES_LTI_TOOL: cms/envs/common.py (line 133)
Default value = False
Description: Desc: When set to True, Content Libraries in [output truncated, see link for full description]
- +settings.ENABLE_COOKIE_CONSENT: lms/envs/common.py (line 508)
Default value = False
Description: Desc: Enable header banner for cookie consent using this service: [output truncated, see link for full description]
- +settings.ENABLE_COSMETIC_DISPLAY_PRICE: lms/envs/common.py (line 258)
Default value = False
Description: Desc: Enable the display of âcosmetic_display_priceâ, set in a course advanced settings. This [output truncated, see link for full description]
- +settings.ENABLE_COURSEWARE_SEARCH: lms/envs/common.py (line 395)
Default value = False
Description: Desc: When enabled, this adds a Search the course widget on the course outline and courseware [output truncated, see link for full description]
- +settings.ENABLE_COURSEWARE_SEARCH_FOR_COURSE_STAFF: lms/envs/common.py (line 408)
Default value = False
Description: Desc: When enabled, this adds a Search the course widget on the course outline and courseware [output truncated, see link for full description]
- +settings.ENABLE_COURSEWARE_SEARCH_VERIFIED_REQUIRED: lms/envs/common.py (line 681)
Default value = False
Description: Desc: When enabled, the courseware search feature will only be enabled [output truncated, see link for full description]
- +settings.ENABLE_COURSE_ASSESSMENT_GRADE_CHANGE_SIGNAL: lms/envs/common.py (line 605)
Default value = False
Description: Desc: Set to True to start sending signals for assessment level grade updates. Notably, the only [output truncated, see link for full description]
- +settings.ENABLE_COURSE_DISCOVERY: lms/envs/common.py (line 447)
Default value = False
Description: Desc: Add a course search widget to the LMS for searching courses. When this is enabled, the [output truncated, see link for full description]
- +settings.ENABLE_COURSE_FILENAME_CCX_SUFFIX: lms/envs/common.py (line 460)
Default value = False
Description: Desc: If set to True, CCX ID will be included in the generated filename for CCX courses.
- +settings.ENABLE_COURSE_HOME_REDIRECT: lms/envs/common.py (line 352)
Default value = True
Description: Desc: When enabled, along with the ENABLE_MKTG_SITE feature toggle, users who attempt to access a [output truncated, see link for full description]
- +settings.ENABLE_COURSE_SORTING_BY_START_DATE: lms/envs/common.py (line 341)
Default value = True
Description: Desc: When a user goes to the homepage (â/â) the user sees the courses listed in the [output truncated, see link for full description]
- +settings.ENABLE_CREDIT_ELIGIBILITY: lms/envs/common.py (line 699)
Default value = True
Description: Desc: When enabled, it is possible to define a credit eligibility criteria in the CMS. A âCredit [output truncated, see link for full description]
- +settings.ENABLE_DASHBOARD_SEARCH: lms/envs/common.py (line 421)
Default value = False
Description: Desc: When enabled, this adds a Search Your Courses widget on the dashboard page for searching [output truncated, see link for full description]
- +settings.ENABLE_DISCUSSION_EMAIL_DIGEST: lms/envs/common.py (line 112)
Default value = False
Description: Desc: Set this to True if you want the discussion digest emails [output truncated, see link for full description]
- +settings.ENABLE_DISCUSSION_HOME_PANEL: lms/envs/common.py (line 101)
Default value = True
Description: Desc: Hides or displays a welcome panel under the Discussion tab, which includes a subscription [output truncated, see link for full description]
- +settings.ENABLE_DJANGO_ADMIN_SITE: lms/envs/common.py (line 138)
Default value = True
Description: Desc: Set to False if you want to disable Djangoâs admin site.
- +settings.ENABLE_EDXNOTES: openedx/envs/common.py (line 772)
Default value = False
Description: Desc: This toggle enables the students to save and manage their annotations in the [output truncated, see link for full description]
- +settings.ENABLE_FOOTER_MOBILE_APP_LINKS: lms/envs/common.py (line 375)
Default value = False
Description: Desc: Set to True if you want show the mobile app links (Apple App Store & Google Play Store) in [output truncated, see link for full description]
- +settings.ENABLE_HIDE_FROM_TOC_UI: cms/envs/common.py (line 237)
Default value = False
Description: Desc: When enabled, exposes hide_from_toc xblock attribute so course authors can configure it as
- +settings.ENABLE_HTML_XBLOCK_STUDENT_VIEW_DATA: lms/envs/common.py (line 545)
Default value = False
Description: Desc: Whether HTML Block returns HTML content with the Course Blocks API when the API [output truncated, see link for full description]
- +settings.ENABLE_LOGIN_MICROFRONTEND: lms/envs/common.py (line 239)
Default value = False
Description: Desc: Enable the login micro frontend.
- +settings.ENABLE_LTI_PII_ACKNOWLEDGEMENT: cms/envs/common.py (line 204)
Default value = False
Description: Desc: Enables the lti pii acknowledgement feature for a course
- +settings.ENABLE_LTI_PROVIDER: lms/envs/common.py (line 495)
Default value = False
Description: Desc: When set to True, Open edX site can be used as an LTI Provider to other systems [output truncated, see link for full description]
- +settings.ENABLE_MASQUERADE: lms/envs/common.py (line 150)
Default value = True
Description: Desc: None
- +settings.ENABLE_MAX_FAILED_LOGIN_ATTEMPTS: lms/envs/common.py (line 293)
Default value = True
Description: Desc: This feature will keep track of the number of failed login attempts on a given userâs [output truncated, see link for full description]
- +settings.ENABLE_NEW_BULK_EMAIL_EXPERIENCE: lms/envs/common.py (line 637)
Default value = False
Description: Desc: When true, replaces the bulk email tool found on the [output truncated, see link for full description]
- +settings.ENABLE_ORA_USERNAMES_ON_DATA_EXPORT: lms/envs/common.py (line 593)
Default value = False
Description: Desc: Set to True to add deanonymized usernames to ORA data [output truncated, see link for full description]
- +settings.ENABLE_SEND_XBLOCK_LIFECYCLE_EVENTS_OVER_BUS: cms/envs/common.py (line 224)
Default value = False
Description: Desc: Enables sending xblock lifecycle events over the event bus. Used to create the [output truncated, see link for full description]
- +settings.ENABLE_SPECIAL_EXAMS: lms/envs/common.py (line 486)
Default value = False
Description: Desc: Enable to use special exams, aka timed and proctored exams.
- +settings.ENABLE_STUDENT_HISTORY_VIEW: lms/envs/common.py (line 200)
Default value = True
Description: Desc: This provides a UI to show a studentâs submission history in a problem by the Staff Debug [output truncated, see link for full description]
- +settings.ENABLE_THIRD_PARTY_AUTH: lms/envs/common.py (line 316)
Default value = False
Description: Desc: Turn on third-party auth. Disabled for now because full implementations are not yet [output truncated, see link for full description]
- +settings.ENABLE_UNICODE_USERNAME: lms/envs/common.py (line 127)
Default value = False
Description: Desc: Set this to True to allow unicode characters in username. Enabling this will also [output truncated, see link for full description]
- +settings.ENABLE_XBLOCK_VIEW_ENDPOINT: lms/envs/common.py (line 167)
Default value = False
Description: Desc: Enable an API endpoint, named âxblock_viewâ, to serve rendered XBlock views. This might be [output truncated, see link for full description]
- +settings.HIDE_DASHBOARD_COURSES_UNTIL_ACTIVATED: lms/envs/common.py (line 190)
Default value = False
Description: Desc: When set, it hides the Courses list on the Learner Dashboard page if the learner has not [output truncated, see link for full description]
- +settings.IN_CONTEXT_DISCUSSION_ENABLED_DEFAULT: cms/envs/common.py (line 247)
Default value = True
Description: Desc: Set to False to disable in-context discussion for units by default.
- +settings.SEND_LEARNING_CERTIFICATE_LIFECYCLE_EVENTS_TO_BUS: lms/envs/common.py (line 669)
Default value = False
Description: Desc: When True, the system will publish certificate lifecycle signals to the event bus. [output truncated, see link for full description]
- +settings.SKIP_EMAIL_VALIDATION: lms/envs/common.py (line 248)
Default value = False
Description: Desc: Turn this on to skip sending emails for user validation. [output truncated, see link for full description]
Removed Feature Toggles#
- -COOKIE_NAME_CHANGE_ACTIVATE: openedx/core/djangoapps/cookie_metadata/middleware.py (line 60)
Description: Desc: Used to enable CookieNameChange middleware which changes a cookie name in request.COOKIES
- -FEATURES[âALLOW_ADMIN_ENTERPRISE_COURSE_ENROLLMENT_DELETIONâ]: lms/envs/common.py (line 933)
Description: Desc: If true, allows for the deletion of EnterpriseCourseEnrollment records via Django Admin.
- -FEATURES[âALLOW_COURSE_RERUNSâ]: cms/envs/common.py (line 309)
Description: Desc: This will allow staff member to re-run the course from the studio home page and will [output truncated, see link for full description]
- -FEATURES[âALLOW_EMAIL_ADDRESS_CHANGEâ]: lms/envs/common.py (line 798)
Description: Desc: Allow users to change their email address on the Account Settings page. If this is [output truncated, see link for full description]
- -FEATURES[âALLOW_PUBLIC_ACCOUNT_CREATIONâ]: lms/envs/common.py (line 762)
Description: Desc: Allow public account creation. If this is disabled, users will no longer have access to [output truncated, see link for full description]
- -FEATURES[âALWAYS_REDIRECT_HOMEPAGE_TO_DASHBOARD_FOR_AUTHENTICATED_USERâ]: lms/envs/common.py (line 487)
Description: Desc: When a logged in user goes to the homepage (â/â) the user will be redirected to the [output truncated, see link for full description]
- -FEATURES[âAUTOMATIC_AUTH_FOR_TESTINGâ]: lms/envs/common.py (line 348)
Description: Desc: Set to True to perform acceptance and load test. Auto auth view is responsible for load [output truncated, see link for full description]
- -FEATURES[âAUTOMATIC_VERIFY_STUDENT_IDENTITY_FOR_TESTINGâ]: lms/envs/common.py (line 402)
Description: Desc: If set to True, then we want to skip posting anything to Software Secure. Bypass posting [output truncated, see link for full description]
- -FEATURES[âBADGES_ENABLEDâ]: cms/envs/common.py (line 559)
Description: Desc: Set to True to enable the Badges feature.
- -FEATURES[âCERTIFICATES_HTML_VIEWâ]: lms/envs/common.py (line 630)
Description: Desc: Set to True to enable course certificates on your instance of Open edX.
- -FEATURES[âCOURSES_ARE_BROWSABLEâ]: lms/envs/common.py (line 252)
Description: Desc: When this is set to True, all the courses will be listed on the /courses page and Explore [output truncated, see link for full description]
- -FEATURES[âCUSTOM_CERTIFICATE_TEMPLATES_ENABLEDâ]: lms/envs/common.py (line 643)
Description: Desc: Set to True to enable custom certificate templates which are configured via Django admin.
- -FEATURES[âDEPRECATE_OLD_COURSE_KEYS_IN_STUDIOâ]: cms/envs/common.py (line 432)
Description: Desc: Warn about removing support for deprecated course keys. [output truncated, see link for full description]
- -FEATURES[âDISABLE_ADVANCED_SETTINGSâ]: cms/envs/common.py (line 517)
Description: Desc: Set to True to disable the advanced settings page in Studio for all users except those [output truncated, see link for full description]
- -FEATURES[âDISABLE_ALLOWED_ENROLLMENT_IF_ENROLLMENT_CLOSEDâ]: lms/envs/common.py (line 1022)
Description: Desc: Set to True to disable enrollment for user invited to a course
- -FEATURES[âDISABLE_COURSE_CREATIONâ]: cms/envs/common.py (line 448)
Description: Desc: If set to True, it disables the course creation functionality and hides the âNew Courseâ [output truncated, see link for full description]
- -FEATURES[âDISABLE_HONOR_CERTIFICATESâ]: lms/envs/common.py (line 336)
Description: Desc: Set to True to disable honor certificates. Typically used when your installation only [output truncated, see link for full description]
- -FEATURES[âDISABLE_LOGIN_BUTTONâ]: lms/envs/common.py (line 217)
Description: Desc: Removes the display of the login button in the navigation bar. [output truncated, see link for full description]
- -FEATURES[âDISABLE_MOBILE_COURSE_AVAILABLEâ]: cms/envs/common.py (line 386)
Description: Desc: Set to True to remove Mobile Course Available UI Flag from Studioâs Advanced Settings [output truncated, see link for full description]
- -FEATURES[âDISABLE_START_DATESâ]: lms/envs/common.py (line 123)
Description: Desc: When True, all courses will be active, regardless of start [output truncated, see link for full description]
- -FEATURES[âDISABLE_UNENROLLMENTâ]: cms/envs/common.py (line 505)
Description: Desc: Set to True to disable self-unenrollments via REST API. [output truncated, see link for full description]
- -FEATURES[âDISPLAY_DEBUG_INFO_TO_STAFFâ]: lms/envs/common.py (line 100)
Description: Desc: Add a âStaff Debugâ button to course blocks for debugging [output truncated, see link for full description]
- -FEATURES[âDISPLAY_HISTOGRAMS_TO_STAFFâ]: lms/envs/common.py (line 110)
Description: Desc: This displays histograms in the Staff Debug Info panel to course staff.
- -FEATURES[âEDITABLE_SHORT_DESCRIPTIONâ]: cms/envs/common.py (line 234)
Description: Desc: This feature flag allows editing of short descriptions on the Schedule & Details page in [output truncated, see link for full description]
- -FEATURES[âEMBARGOâ]: lms/envs/common.py (line 444)
Description: Desc: Turns on embargo functionality, which blocks users from [output truncated, see link for full description]
- -FEATURES[âENABLE_ACCOUNT_DELETIONâ]: lms/envs/common.py (line 848)
Description: Desc: Whether to display the account deletion section on Account Settings page. Set to False to [output truncated, see link for full description]
- -FEATURES[âENABLE_ANNOUNCEMENTSâ]: openedx/features/announcements/settings/common.py (line 5)
Description: Desc: This feature can be enabled to show system wide announcements [output truncated, see link for full description]
- -FEATURES[âENABLE_AUTHN_MICROFRONTENDâ]: lms/envs/common.py (line 872)
Description: Desc: Supports staged rollout of a new micro-frontend-based implementation of the logistration.
- -FEATURES[âENABLE_BULK_ENROLLMENT_VIEWâ]: lms/envs/common.py (line 808)
Description: Desc: When set to True the bulk enrollment view is enabled and one can use it to enroll multiple [output truncated, see link for full description]
- -FEATURES[âENABLE_BULK_USER_RETIREMENTâ]: lms/envs/common.py (line 942)
Description: Desc: Set to True to enable bulk user retirement through REST API. This is disabled by [output truncated, see link for full description]
- -FEATURES[âENABLE_CERTIFICATES_IDV_REQUIREMENTâ]: lms/envs/common.py (line 1012)
Description: Desc: Whether to enforce ID Verification requirements for course certificates generation
- -FEATURES[âENABLE_CHANGE_USER_PASSWORD_ADMINâ]: cms/envs/common.py (line 396)
Description: Desc: Set to True to enable changing a user password through django admin. This is disabled by [output truncated, see link for full description]
- -FEATURES[âENABLE_COMBINED_LOGIN_REGISTRATION_FOOTERâ]: lms/envs/common.py (line 523)
Description: Desc: Display the standard footer in the login page. This feature can be overridden by a site- [output truncated, see link for full description]
- -FEATURES[âENABLE_CONTENT_LIBRARIES_LTI_TOOLâ]: cms/envs/common.py (line 281)
Description: Desc: When set to True, Content Libraries in [output truncated, see link for full description]
- -FEATURES[âENABLE_COOKIE_CONSENTâ]: lms/envs/common.py (line 781)
Description: Desc: Enable header banner for cookie consent using this service: [output truncated, see link for full description]
- -FEATURES[âENABLE_COSMETIC_DISPLAY_PRICEâ]: lms/envs/common.py (line 391)
Description: Desc: Enable the display of âcosmetic_display_priceâ, set in a course advanced settings. This [output truncated, see link for full description]
- -FEATURES[âENABLE_COURSEWARE_SEARCHâ]: lms/envs/common.py (line 579)
Description: Desc: When enabled, this adds a Search the course widget on the course outline and courseware [output truncated, see link for full description]
- -FEATURES[âENABLE_COURSEWARE_SEARCH_FOR_COURSE_STAFFâ]: lms/envs/common.py (line 592)
Description: Desc: When enabled, this adds a Search the course widget on the course outline and courseware [output truncated, see link for full description]
- -FEATURES[âENABLE_COURSEWARE_SEARCH_VERIFIED_REQUIREDâ]: lms/envs/common.py (line 1053)
Description: Desc: When enabled, the courseware search feature will only be enabled [output truncated, see link for full description]
- -FEATURES[âENABLE_COURSE_ASSESSMENT_GRADE_CHANGE_SIGNALâ]: lms/envs/common.py (line 922)
Description: Desc: Set to True to start sending signals for assessment level grade updates. Notably, the only [output truncated, see link for full description]
- -FEATURES[âENABLE_COURSE_DISCOVERYâ]: lms/envs/common.py (line 654)
Description: Desc: Add a course search widget to the LMS for searching courses. When this is enabled, the [output truncated, see link for full description]
- -FEATURES[âENABLE_COURSE_FILENAME_CCX_SUFFIXâ]: lms/envs/common.py (line 667)
Description: Desc: If set to True, CCX ID will be included in the generated filename for CCX courses.
- -FEATURES[âENABLE_COURSE_HOME_REDIRECTâ]: lms/envs/common.py (line 509)
Description: Desc: When enabled, along with the ENABLE_MKTG_SITE feature toggle, users who attempt to access a [output truncated, see link for full description]
- -FEATURES[âENABLE_COURSE_SORTING_BY_START_DATEâ]: lms/envs/common.py (line 498)
Description: Desc: When a user goes to the homepage (â/â) the user sees the courses listed in the [output truncated, see link for full description]
- -FEATURES[âENABLE_CREDIT_ELIGIBILITYâ]: lms/envs/common.py (line 3659)
Description: Desc: When enabled, it is possible to define a credit eligibility criteria in the CMS. A âCredit [output truncated, see link for full description]
- -FEATURES[âENABLE_CSMH_EXTENDEDâ]: lms/envs/common.py (line 741)
Description: Desc: Write Courseware Student Module History (CSMH) to the extended table: this logs all [output truncated, see link for full description]
- -FEATURES[âENABLE_DASHBOARD_SEARCHâ]: lms/envs/common.py (line 605)
Description: Desc: When enabled, this adds a Search Your Courses widget on the dashboard page for searching [output truncated, see link for full description]
- -FEATURES[âENABLE_DISCUSSION_EMAIL_DIGESTâ]: lms/envs/common.py (line 171)
Description: Desc: Set this to True if you want the discussion digest emails [output truncated, see link for full description]
- -FEATURES[âENABLE_DISCUSSION_HOME_PANELâ]: lms/envs/common.py (line 160)
Description: Desc: Hides or displays a welcome panel under the Discussion tab, which includes a subscription [output truncated, see link for full description]
- -FEATURES[âENABLE_DISCUSSION_SERVICEâ]: lms/envs/common.py (line 136)
Description: Desc: When True, it will enable the Discussion tab in courseware for all courses. Setting this [output truncated, see link for full description]
- -FEATURES[âENABLE_DJANGO_ADMIN_SITEâ]: lms/envs/common.py (line 197)
Description: Desc: Set to False if you want to disable Djangoâs admin site.
- -FEATURES[âENABLE_EDXNOTESâ]: lms/envs/common.py (line 549)
Description: Desc: This toggle enables the students to save and manage their annotations in the [output truncated, see link for full description]
- -FEATURES[âENABLE_FOOTER_MOBILE_APP_LINKSâ]: lms/envs/common.py (line 536)
Description: Desc: Set to True if you want show the mobile app links (Apple App Store & Google Play Store) in [output truncated, see link for full description]
- -FEATURES[âENABLE_GRADING_METHOD_IN_PROBLEMSâ]: cms/envs/common.py (line 550)
Description: Desc: Enables the grading method feature in capa problems.
- -FEATURES[âENABLE_HELP_LINKâ]: cms/envs/common.py (line 460)
Description: Desc: When True, a help link is displayed on the main navbar. Set False to hide it.
- -FEATURES[âENABLE_HIDE_FROM_TOC_UIâ]: cms/envs/common.py (line 540)
Description: Desc: When enabled, exposes hide_from_toc xblock attribute so course authors can configure it as
- -FEATURES[âENABLE_HTML_XBLOCK_STUDENT_VIEW_DATAâ]: lms/envs/common.py (line 821)
Description: Desc: Whether HTML Block returns HTML content with the Course Blocks API when the API [output truncated, see link for full description]
- -FEATURES[âENABLE_INTEGRITY_SIGNATUREâ]: cms/envs/common.py (line 470)
Description: Desc: Whether to replace ID verification course/certificate requirement
- -FEATURES[âENABLE_LOGIN_MICROFRONTENDâ]: lms/envs/common.py (line 372)
Description: Desc: Enable the login micro frontend.
- -FEATURES[âENABLE_LTI_PII_ACKNOWLEDGEMENTâ]: cms/envs/common.py (line 482)
Description: Desc: Enables the lti pii acknowledgement feature for a course
- -FEATURES[âENABLE_LTI_PROVIDERâ]: lms/envs/common.py (line 702)
Description: Desc: When set to True, Open edX site can be used as an LTI Provider to other systems [output truncated, see link for full description]
- -FEATURES[âENABLE_MASQUERADEâ]: lms/envs/common.py (line 209)
Description: Desc: None
- -FEATURES[âENABLE_MAX_FAILED_LOGIN_ATTEMPTSâ]: lms/envs/common.py (line 426)
Description: Desc: This feature will keep track of the number of failed login attempts on a given userâs [output truncated, see link for full description]
- -FEATURES[âENABLE_MKTG_SITEâ]: lms/envs/common.py (line 474)
Description: Desc: Toggle to enable alternate urls for marketing links.
- -FEATURES[âENABLE_NEW_BULK_EMAIL_EXPERIENCEâ]: lms/envs/common.py (line 975)
Description: Desc: When true, replaces the bulk email tool found on the [output truncated, see link for full description]
- -FEATURES[âENABLE_OAUTH2_PROVIDERâ]: lms/envs/common.py (line 226)
Description: Desc: Enable this feature to allow this Open edX platform to be an OAuth2 authentication [output truncated, see link for full description]
- -FEATURES[âENABLE_ORA_ALL_FILE_URLSâ]: cms/envs/common.py (line 406)
Description: Desc: A âwork-aroundâ feature toggle meant to help in cases where some file uploads are not [output truncated, see link for full description]
- -FEATURES[âENABLE_ORA_USERNAMES_ON_DATA_EXPORTâ]: lms/envs/common.py (line 910)
Description: Desc: Set to True to add deanonymized usernames to ORA data [output truncated, see link for full description]
- -FEATURES[âENABLE_ORA_USER_STATE_UPLOAD_DATAâ]: cms/envs/common.py (line 420)
Description: Desc: A âwork-aroundâ feature toggle meant to help in cases where some file uploads are not [output truncated, see link for full description]
- -FEATURES[âENABLE_PASSWORD_RESET_FAILURE_EMAILâ]: lms/envs/common.py (line 833)
Description: Desc: Whether to send an email for failed password reset attempts or not. This happens when a [output truncated, see link for full description]
- -FEATURES[âENABLE_SEND_XBLOCK_LIFECYCLE_EVENTS_OVER_BUSâ]: cms/envs/common.py (line 527)
Description: Desc: Enables sending xblock lifecycle events over the event bus. Used to create the [output truncated, see link for full description]
- -FEATURES[âENABLE_SPECIAL_EXAMSâ]: lms/envs/common.py (line 693)
Description: Desc: Enable to use special exams, aka timed and proctored exams.
- -FEATURES[âENABLE_STUDENT_HISTORY_VIEWâ]: lms/envs/common.py (line 284)
Description: Desc: This provides a UI to show a studentâs submission history in a problem by the Staff Debug [output truncated, see link for full description]
- -FEATURES[âENABLE_TEXTBOOKâ]: lms/envs/common.py (line 149)
Description: Desc: Add PDF and HTML textbook tabs to the courseware.
- -FEATURES[âENABLE_THIRD_PARTY_AUTHâ]: lms/envs/common.py (line 463)
Description: Desc: Turn on third-party auth. Disabled for now because full implementations are not yet [output truncated, see link for full description]
- -FEATURES[âENABLE_UNICODE_USERNAMEâ]: lms/envs/common.py (line 186)
Description: Desc: Set this to True to allow unicode characters in username. Enabling this will also [output truncated, see link for full description]
- -FEATURES[âENABLE_XBLOCK_VIEW_ENDPOINTâ]: lms/envs/common.py (line 237)
Description: Desc: Enable an API endpoint, named âxblock_viewâ, to serve rendered XBlock views. This might be [output truncated, see link for full description]
- -FEATURES[âHIDE_DASHBOARD_COURSES_UNTIL_ACTIVATEDâ]: lms/envs/common.py (line 274)
Description: Desc: When set, it hides the Courses list on the Learner Dashboard page if the learner has not [output truncated, see link for full description]
- -FEATURES[âIN_CONTEXT_DISCUSSION_ENABLED_DEFAULTâ]: cms/envs/common.py (line 567)
Description: Desc: Set to False to disable in-context discussion for units by default.
- -FEATURES[âLICENSINGâ]: lms/envs/common.py (line 620)
Description: Desc: Toggle platform-wide course licensing. The course.license attribute is then used to append [output truncated, see link for full description]
- -FEATURES[âRESTRICT_AUTOMATIC_AUTHâ]: lms/envs/common.py (line 360)
Description: Desc: Prevent auto auth from creating superusers or modifying existing users. Auto auth is a [output truncated, see link for full description]
- -FEATURES[âSEND_LEARNING_CERTIFICATE_LIFECYCLE_EVENTS_TO_BUSâ]: lms/envs/common.py (line 1032)
Description: Desc: When True, the system will publish certificate lifecycle signals to the event bus. [output truncated, see link for full description]
- -FEATURES[âSHOW_FOOTER_LANGUAGE_SELECTORâ]: lms/envs/common.py (line 731)
Description: Desc: When set to True, language selector will be visible in the footer.
- -FEATURES[âSHOW_HEADER_LANGUAGE_SELECTORâ]: lms/envs/common.py (line 715)
Description: Desc: When set to True, language selector will be visible in the header.
- -FEATURES[âSHOW_REGISTRATION_LINKSâ]: lms/envs/common.py (line 772)
Description: Desc: Allow registration links. If this is disabled, users will no longer see buttons to the [output truncated, see link for full description]
- -FEATURES[âSKIP_EMAIL_VALIDATIONâ]: lms/envs/common.py (line 381)
Description: Desc: Turn this on to skip sending emails for user validation. [output truncated, see link for full description]
- -SEND_CATALOG_INFO_SIGNAL: cms/djangoapps/contentstore/signals/handlers.py (line 74)
Description: Desc: When True, sends to catalog-info-changed signal when course_published occurs. [output truncated, see link for full description]
- -contentstore.new_studio_mfe.use_new_files_uploads_page: cms/djangoapps/contentstore/toggles.py (line 373)
Description: Desc: This flag enables the use of the new studio files and uploads page mfe
- -discussions.enable_forum_v2: openedx/core/djangoapps/discussions/config/waffle.py (line 49)
Description: Desc: Waffle flag to use the forum v2 instead of v1(cs_comment_service)
- -legacy_studio.files_uploads: cms/djangoapps/contentstore/toggles.py (line 354)
Description: Desc: Temporarily fall back to the old Studio Files & Uploads page.
- -legacy_studio.home: cms/djangoapps/contentstore/toggles.py (line 184)
Description: Desc: Temporarily fall back to the old Studio logged-in landing page.
- -legacy_studio.text_editor: cms/djangoapps/contentstore/toggles.py (line 89)
Description: Desc: Temporarily fall back to the old Text component (a.k.a. html block) editor.
- -notifications.enable_notification_grouping: openedx/core/djangoapps/notifications/config/waffle.py (line 42)
Description: Desc: Waffle flag to enable the Notifications Grouping feature
- -notifications.enable_ora_grade_notifications: openedx/core/djangoapps/notifications/config/waffle.py (line 32)
Description: Desc: Waffle flag to enable ORA grade notifications
Known Issues#
See the Build Test Release project board for known open issues.
Maintenance chart
Review Date |
Working Group Reviewer |
Release |
Test situation |
Dec 2025 |
BTR |
Ulmo |
Pass |