Commit Graph

2166 Commits

Author SHA1 Message Date
Taylor Payne
d49de134d5 refactor: hoist annotations for common settings with differing values (#37800) 2026-01-09 13:07:12 -07:00
Taylor Payne
7111e8b18c refactor: bring common settings into common module (#37746) 2026-01-09 09:20:59 -07:00
Ahtisham Shahid
85fc7207be feat: added buffer to immediate email notification (#37741) 2026-01-02 17:48:01 +05:00
Irtaza Akram
99c6e901d9 Convert Problem Block Mako Templates to Django Templates (#37570)
* fix: convert mako to django templates for problem block

* fix: pylint issues
2025-12-09 19:29:06 +05:00
Taylor Payne
d592784b35 refactor: lift shared test settings up to common module (#37714) 2025-12-04 16:50:12 -07:00
Deimer Morales
a765273cf7 fix: fixing the documentation article links (#37493)
* fix: fixing articles

The articles were updated because they pointed to the old documentation.

* fix: updating articles references

The documentation links were pointing to the old documentation and in many cases, these links no longer worked, so we have updated these links to the new documentation.
2025-12-01 15:40:15 -05:00
Muhammad Labeeb
8ad4d42e3b feat!: Remove proctortrack references; add requires_escalation_email and show_review_rules options (#37576)
BREAKING CHANGE: All references to the hardcoded 'proctortrack' string have
been removed from the codebase,  as well as the `studio.show_review_rules`
waffle flag. These were used to determine whether an escalation email is
required and whether review rules should be shown. These decisions are now made
based on the value of 'requires_escalation_email' (default False) and 'show_review_rules'
(default True) config items in the PROCTORING_BACKENDS entry.

Additionally:
* The proctoring info api will now return the list of providers which require an escalation
   email so that frontend-app-learning does not need to use a hardcoded check agaist
   the provider name 'proctortrack'.
* Removed translation commands, mock variables and user facing strings that contained
  'proctortrack'.
* Updated all test cases that were using proctortrack to use fake providers names.

Part of: https://github.com/openedx/edx-platform/issues/36329
2025-11-25 09:37:32 -05:00
Feanil Patel
d082d3d87c fix: Make sure that the features proxy works w/devstack settings. (#37666)
Without this the devstack settings don't correctly proxy the features
updates made to get devstack working.

Co-authored-by: Kyle McCormick <kyle@axim.org>
2025-11-20 22:14:47 +00:00
Feanil Patel
92a47097b7 feat: Drop the ENABLE_OAUTH2_PROVIDER flag.
This setting was not actually not changing installation behavior, that
is being set by whether oauth_dispatch is in INSTALLED_APPS or not.

This flag was being used to:

* Hide enable/disable certain URL paths.
    * We need these paths on all the time in the LMS because all other
      services and MFE rely on oauth to authenticate with the LMS so we
      just end up turning this on later in the settings stack.

* We use it to only run certain oauth_dispatch tests in the LMS test
  environment because the oauth_dispatch app is not installed in the
  CMS.
    * We use the `skip_unless_lms` decorator now instead to do this or
      just run the tests in both suites because they are valid tests in
      both contexts.
2025-11-03 12:54:06 -05:00
Feanil Patel
d76bed4bbb style: Drop unused imports. (#37572)
* style: Drop unused imports.

I was looking at these files for some other reason and saw that these
imports were unused. Some of it looks like an artifact of the hoisting
of some settings up to the `openedx/env/common.py` file and others look
like some ancient unused imports.


Co-authored-by: Kyle McCormick <kyle@axim.org>
2025-10-30 10:55:38 -04:00
Feanil Patel
28ab2ceb67 fix: Drop other references to studiofrontend.
Drop tooling to load studio-frontend components into mako templates and
XSS testing features related to it.
2025-10-20 14:08:45 -04:00
Kyle McCormick
20bc7113e3 feat!: Remove Studio Maintenance & Announcements (#37432)
The announcements editor was never ported to frontend-app-authoring, and
the announcements display was never ported to frontend-app-learner-dashboard.
This announcements feature is rarely used, undocumented, non-a11y-friendly, and
there were no volunteers to port it to the new frontends. It is the last
remaining part of the legacy Studio "Maintenance" dashboard. So, we are
removing it.

BREAKING CHANGE: This removes...
* Studio Maintenance dashboard legacy frontend
* Studio Edit Announcements legacy frontend
* The snippet of legacy learner dashboard which renders announcements
* openedx/features/announcements djangoapp
* The ENABLE_ANNOUNCEMENTS feature flag

Not removed:
* The announcements_announcement table from openedx/features/announcements .
  The table is most likely very small, as it is only populated by administrators. Removing
  it would be more labor for us and more risk of toil for operators than is worthwhile.

Closes: https://github.com/openedx/edx-platform/issues/36263
2025-10-10 12:48:00 -04:00
Feanil Patel
e4aafc4249 Merge pull request #37361 from mitodl/marslan/6604-configurable-allowed-hosts
fix: make ALLOWED_HOSTS configurable through YAML
2025-10-06 10:35:38 -04:00
Feanil Patel
d34a6b9c6f Merge pull request #37342 from raccoongang/nanai/axm-2166/update-link-generation
feat [FC-86]: update course_about & catalog link generation
2025-09-29 15:28:41 -04:00
Vivek
86aaf2f4cc fix: update Course Highlights help URL (#37388) 2025-09-26 12:52:41 +05:00
Kyle McCormick
7275ce1634 feat!: modulestore_migrator (#36873)
This introduces the modulestore_migrator app, which can be
used to copy content (courses and libraries) from modulestore
into Learning Core. It is currently aimed to work on the legacy
library -> v2 library migration, but it will be used in the future
for course->library and course->course migrations.

This includes an initial REST API, Django admin interface,
and Python API.

Closes: https://github.com/openedx/edx-platform/issues/37211

Requires some follow-up work before this is production-ready:
https://github.com/openedx/edx-platform/issues/37259

Co-authored-by: Andrii <andrii.hantkovskyi@raccoongang.com>
Co-authored-by: Maksim Sokolskiy <maksim.sokolskiy@raccoongang.com>
2025-09-24 11:02:05 -04:00
Serhii Nanai
f018cfe70e feat: update course_about & catalog link generation 2025-09-23 20:45:01 +03:00
Muhammad Arslan Abdul Rauf
245c76fc1b fix: add '*' wild card in common ALLOWED_HOSTS 2025-09-22 16:38:05 +05:00
Muhammad Arslan Abdul Rauf
83dbf263d7 refactor: move ALLOWED_HOSTS to openedx/envs/common 2025-09-22 16:27:14 +05:00
Muhammad Arslan Abdul Rauf
b39e6ff20e fix: make ALLOWED_HOSTS configurable through YAML 2025-09-22 16:21:22 +05:00
Taylor Payne
c3bc32399f chore: remove outdated JWT auth related settings 2025-09-19 15:18:54 -06:00
Taylor Payne
bf5a399380 Consolidate common settings to platform wide settings module (#37337)
* refactor: lift same settings up to openedx common module
2025-09-19 09:00:02 -04:00
Feanil Patel
36e458d957 fix: Use CI oriented FakeWebpackLoader
This was added in a newer version of django-webpack loader to be used in
CI.  Previously we had some monkey patches to deal with this but they
could break when changes happen to the upstream django-webpack-loader
library.

This should be a more robust solution to keep CI working and to reduce
complexity on future upgrades.
2025-09-18 10:42:26 -04:00
Feanil Patel
f120a7cac5 Merge pull request #37067 from WGU-Open-edX/collapse-features-dictionary
refactor: flatten FEATURES dictionary with backward compatible proxy
2025-09-18 10:39:48 -04:00
Navin Karkera
a11086ffac feat: allow editing imported text blocks (#37124)
* feat: allow editing html block imported from upstream

The modified field is left untouched in future sync while storing the
upstream values in hidden fields to allow authors to revert to upstream
version at any point.

* fix: sync downstream_customized field for copy-pasted modified block

* test: add more tests

* fix: lint issues

* test: copy paste

* feat: skip sync if html data is modified

* feat: update upstream fields only when modified

* refactor: use version_synced field to skip sync

* feat: edit title inplace for library source components

* fixup! feat: edit title inplace for library source components

* fix: edit title button style

* fix: test case

* fix: lint issue

* refactor: don't show different icon for modified upstream blocks

* Revert "refactor: use version_synced field to skip sync"

This reverts commit 8b784fff2f49b43702c952e7f955bd4048e8cc69.

* feat: only skip sync for modified blocks if updated as part of container

* refactor: update sync behaviour when synced individually and as part of parent

* feat: include ready to sync children info in downstream link get api

* test: fix failing tests

* fix: lint issues

* feat: new tests and update api to allow overriding modified fields in sync

* test: api changes

* refactor: edit options should be visible for individual imports

* docs: update api docs

* chore: remove old comments
2025-09-17 14:50:24 +05:30
coder1918
790a67a0d1 refactor: flatten FEATURES dictionary with backward compatible proxy 2025-09-09 14:11:39 -06:00
Ram Chandra Bhavirisetty
42afa1bb62 chore: remove deprecated DEFAULT_FILE_STORAGE and STATICFILES_STORAGE settings (#37002) 2025-09-05 17:52:33 -04:00
Kyle McCormick
7ef575ed2d feat!: Drop import_from_modulestore app (3/3 -- uninstall app) (#37241)
https://github.com/openedx/edx-platform/issues/37242
2025-09-02 14:05:16 +00:00
Deborah Kaplan
a4d4ddf9e3 chore: removing ENABLE_V2_CERT_DISPLAY_SETTINGS (#37302)
the remnants of the logic that used this setting has been gone for a long time.
This removes the toggle.

FIXES: APER-1405
2025-08-29 16:09:02 -04:00
Feanil Patel
47efb29071 feat: Remove the SEND_CATALOG_INFO_SIGNAL
This setting controls an additive feature to send a signal on catalog
changes.  The signal is documented as a part of the list of supported
events in our openedx-events reference. It has also been running live in
the edx.org deployment for some time.

This change removes the signal and defaults to the behavior as if it is
net to true.

OPERATORS NOTE: If you override the `SEND_CATALOG_INFO_SIGNAL` in your
settings overrides for the edx-platform, you can remove that override.
This signal will always fire on catalog changes now.  The performance
impact of this change should be negligible.
2025-08-26 14:45:10 -04:00
Ehtesham Alam
cb80118ebf fix: remove CSRF_TRUSTED_ORIGINS_WITH_SCHEME variable (#37195) 2025-08-20 11:12:44 +05:00
Irtaza Akram
472801b774 fix: add resourcetemplate to xblock_mixins (#37184)
Add ResourceTemplates to XBLOCK_MIXINS so it’s applied to all CMS XBlocks at
runtime instead of being directly inherited. This keeps the Studio-only feature
in edx-platform (where it belongs), while still making it available to built-in
and extracted XBlocks.

When we extract built-in blocks from the platform, they will not be able to
inherit ResourcesTemplates directly; they will get it from XBLOCK_MIXINS. So,
we also needed to update a few template-related tests to use the mixed block
class (or an instance of it) rather than the unmixed base class, because the
unmixed base classes will soon be extracted and thus lack ResourceTemplates.

Related to https://github.com/openedx/edx-platform/issues/34827
2025-08-12 09:04:34 -04:00
Taylor Payne
325a0c116a fix: update mock config to include scheme for csrf domains (#37120)
Since the scheme must be included for the CSRF_TRUSTED_ORIGINS setting since
Django 4.0, this changes the values in the mock.yml configuration files to use
the scheme for the values under CSRF_TRUSTED_ORIGINS. We match the values
defined under CSRF_TRUSTED_ORIGINS_WITH_SCHEME key.

lms/envs/production.py pulls from CSRF_TRUSTED_ORIGINS_WITH_SCHEME in the YAML
config to set the CSRF_TRUSTED_ORIGINS setting , but cms/envs/production.py
pulls from CSRF_TRUSTED_ORIGINS in the YAML. So, this change fixes the CMS when
run with mock.yml.
2025-08-08 11:31:04 -04:00
Taylor Payne
16d96565e3 refactor: move production defaults to common modules (#37045)
In the effort to simplify settings in edx-platform, as discussed in ADR 22 -
Settings Simplification, this PR brings some of the production defaults defined
in `lms/envs/production.py` and `cms/envs/production.py` up to
`openedx/envs/common.py` or `lms/envs/common.py` and `cms/envs/common.py` as
appropriate.

Bringing these defaults up from the `production.py` settings modules caused
changes in the rendered settings of the `test.py` modules, and so I have
settings to the `test.py` modules to bring the rendered settings back in line
with what is has been. I have not deeply looked at which settings are needed
for tests to pass or not, but just the differences between the rendered
settings between `master` and this branch.

ADR 22: https://github.com/openedx/edx-platform/blob/master/docs/decisions/0022-settings-simplification.rst
Fixes https://github.com/openedx/edx-platform/issues/36892.
2025-08-04 17:06:16 -04:00
Mubbshar Anwar
6d150acf81 refactor: Remove HIBP settings from CMS (#36998)
Remove HIBP settings from CMS common settings module
2025-07-31 09:43:36 -04:00
Kyle McCormick
a7eb261330 feat!: Remove unused Django settings files
BREAKING CHANGE: This removes all Django settings files
except {lms,cms}/envs/{production,devstack,test}.py.
Operators using any other edx-platform Django settings
files should move to {lms,cms}/envs/production.py, or
they should copy the settings file they need out of edx-platform
and into their own configuration sources.

Part of: https://github.com/openedx/edx-platform/issues/36905
2025-07-22 10:27:50 -04:00
Taylor Payne
36327ff27c refactor: import constants into platform-wide settings module 2025-07-21 08:08:34 -04:00
Taylor Payne
a98dd3f748 refactor: move explicitly shared settings into new common module 2025-07-21 08:08:34 -04:00
Devasia Joseph
91006ec314 feat: add CMS base domain to enable session-based API access (#37014) 2025-07-17 10:41:10 +05:30
Jorg Are
1e2a2d9653 feat: extend transcript languages (#36964) 2025-07-02 12:16:26 -04:00
Krish Tyagi
3895044c72 fix!: Remove deprecated CookieNameChange middleware (#36815)
The CookieNameChange middleware has been removed. Originally a temporary
measure slated for removal by October 1, 2021, it facilitated a transitional cookie
migration pattern that is no longer required. 

This action addresses DEPR: 
https://github.com/openedx/edx-platform/issues/36834
2025-06-25 19:38:43 -04:00
Tim McCormack
fb6eaf5141 docs: Document how STATIC_URL_BASE is used (#36952) 2025-06-25 18:09:10 -04:00
Feanil Patel
3a3b3faadb Merge pull request #36846 from raccoongang/rg/axm-course-catalog-add-org-image-url-indexing
feat: [FC-86] add org_image_url to course_discovery index FC-86
2025-06-23 14:13:27 -04:00
Andrii
04febf0761 refactor: change logo_path to logo_url 2025-06-23 19:12:26 +03:00
Andrii
50fdf8446f refactor: use default logo as placehodler for organization 2025-06-19 16:24:02 +03:00
Andrii
66c03afdb2 refactor: change placeholder variable_name + url and add placeholder image 2025-06-18 19:07:08 +03:00
Robert Raposa
f4c3575bb0 Revert "fix(settings): replace DEFAULT_FILE_STORAGE with STORAGES[default]" (#36907)
This reverts commit 39028b9500.
2025-06-13 16:57:47 +00:00
Ram Chandra Bhavirisetty
39028b9500 fix(settings): replace DEFAULT_FILE_STORAGE with STORAGES[default] 2025-06-13 11:40:56 -04:00
Awais Qureshi
be09d1cd18 fix: removing deprecated SHA1PasswordHasher from tests. (#36881) 2025-06-09 16:31:51 -04:00
Andrii
09f0406ec3 feat: add org_image_url to course_discovery index 2025-06-03 17:46:47 +03:00