Commit Graph

67689 Commits

Author SHA1 Message Date
Emad Rad
6a046ebe50 chore: fixed typos 2025-12-11 11:46:44 -05:00
Taimoor Ahmed
b76595d610 chore: bump forum version to 0.4.0 (#37731)
Co-authored-by: Taimoor  Ahmed <taimoor.ahmed@A006-01711.local>
2025-12-10 05:09:20 +05:00
edX requirements bot
b6673dcc98 chore: Upgrade Python requirements 2025-12-09 14:31:32 -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
Irtaza Akram
c3e85426cb Autoformat Problem XBlock Source Files for Consistency (2/2) (#37487)
* fix: run prettier on problem block code

* fix: codeql issues
2025-12-08 20:01:42 +05:00
Ahtisham Shahid
251ba28770 chore: updated pref settings for misc notification types (#37733) 2025-12-08 13:34:41 +00:00
Ahtisham Shahid
cda62c22db feat: added unfollow behaviour in discussion notification (#37690) 2025-12-08 12:14:00 +05:00
David Ormsbee
dcd2258db4 fix: don't send emails on library backup/restore
There is no way to resume either the backup or restore library actions,
i.e. if you navigate away from it, you have to do it again. This is a
limitation of the current UI because we wanted to get something quick
and simple in for Ulmo, but it also reflects the fact that library
backup/restore should be much faster than course import/export has
historically been.

In any case, sending an email for a 5-10 second task is unnecessary and
distracting, so this commit suppresses the email.

Note: I'm using local imports to get around the fact that the
content_libraries public API is used by content_libraries/tasks.py
which defines the tasks. I can't import from content_libraries/tasks.py
directly, because that would violate import linter rules forbidding
other apps from importing things outside of api.py. This isn't ideal,
but it keeps the fix small and it keeps the logic in the
content_libraries app.
2025-12-05 12:24:00 -05:00
Irtaza Akram
1945b12769 Autoformat Problem XBlock Source Files for Consistency (1/2) (#37476)
* fix: run formatter black and isort

* fix: linting, pydocstyle, xsslint and security issues
2025-12-05 18:31:45 +05:00
Muhammad Farhan Khan
b57e2ac1ea chore: move get_transcript method to video service (#37635)
https://github.com/openedx/public-engineering/issues/445
2025-12-05 17:53:10 +05:00
Taylor Payne
d592784b35 refactor: lift shared test settings up to common module (#37714) 2025-12-04 16:50:12 -07:00
Chris Chávez
828d10400e feat: Add new fields in modulestore migratior serializers [FC-0112] (#37653)
`target_collection` and `task_uuid` added to migration serializers
2025-12-04 21:48:24 +00:00
github-actions[bot]
55b668bea8 feat: Upgrade Python dependency xblocks-contrib
feat: Upgrade Python dependency xblocks-contrib
2025-12-04 17:12:04 +05:00
Javier Ontiveros
215116028a feat: instructor dash - change due date v2 endpoint (#37685)
* feat: added extensions v2 endpoint
2025-12-03 15:39:15 -05:00
Stanislav Lunyachek
0d6c8339b1 fix: Video Xblock - position dropdown menus relative to control bar height 2025-12-03 14:22:40 -03:00
edX requirements bot
101e69d78b chore: Upgrade Python requirements (#37710)
* chore: Upgrade Python requirements

* build: Downgrade edx-submissions for now.

The latest version changes a method signature and so code here will need
to be updated before that can land. There is already a PR to pick up
that change https://github.com/openedx/edx-platform/pull/37528 so it
doesn't seem worth it to add the constraint so just downgrade the
package in this PR so we can land the rest of the updates.

---------

Co-authored-by: Feanil Patel <feanil@axim.org>
2025-12-03 16:55:20 +00:00
github-actions[bot]
86131b1d13 feat: Upgrade Python dependency Django (#37715)
Commit generated by workflow `openedx/edx-platform/.github/workflows/upgrade-one-python-dependency.yml@refs/heads/master`

Co-authored-by: robrap <14576445+robrap@users.noreply.github.com>
2025-12-03 16:55:02 +00:00
Asespinel
957e254a0a fix: Course search pill not cleared when text deleted. (#37709)
* fix: Course search pill not cleared when text deleted

* chore: fix spacing

Co-authored-by: Feanil Patel <feanil@axim.org>

---------

Co-authored-by: Feanil Patel <feanil@axim.org>
2025-12-03 11:28:49 -05:00
KEVYN SUAREZ
6f391d93b9 feat: enrollment_date added to csv report and add custom fields method (#37264)
* chore: enrollment_date added to csv report and add custom fields method managing

* test: tests added

* fix: pylint fix

* fix: new line at test_basic.py added

* feat: new function added to handle available features with custom fields

* chore: replace include_ parameters with direct feature checks

* feat: type validation for custom attributes added

* chore: site config name and variable updated, attribute fixing erased

* test: tests updated
2025-12-03 10:43:40 -05:00
M. Tayyab Tahir Qureshi
1fed4be5c9 refactor: Enable the Extracted HTML XBlock (#37669)
In this commit we are rolling out the Extracted HTML XBlock by toggling the
USE_EXTRACTED_HTML_BLOCK flag to True.

Note: The HTML Block subclasses (StaticTab, About, CourseInfo) still use the
built-in code. We'll update it to use the extracted code in a separate PR.

Part of: https://github.com/openedx/edx-platform/issues/37254
2025-12-03 08:49:59 -05:00
Ahtisham Shahid
ad513cbd23 fix: removed course_id from notification flag implementation (#37716) 2025-12-03 16:38:17 +05:00
feanil
c2fad03823 chore: geoip2: update maxmind geolite country database 2025-12-02 14:01:21 -05:00
Serhiii Nanai
0c3d709d63 feat: add assignment color codes to Progress API (#37438)
* feat: change list of color codes

* fix: add missing color

* style: rename attribute for assignment color list

* docs: add explanation for current implementation
2025-12-02 13:52:36 -05:00
Stanislav
82f574ec2c feat: Replace Twitter with X (#36524)
* feat: Replace Twitter with X


---------

Co-authored-by: Turchanikov Arsen <arsen.turchanikov@raccoongang.com>
2025-12-02 10:43:26 -05:00
Ahtisham Shahid
c8e6a760f9 feat: add grouping for new response notification (#37674) 2025-12-02 15:21:36 +05: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
github-actions[bot]
74286fe1c5 feat: Upgrade Python dependency xblocks-contrib (#37704)
Commit generated by workflow `openedx/edx-platform/.github/workflows/upgrade-one-python-dependency.yml@refs/heads/master`

Co-authored-by: farhan <25842457+farhan@users.noreply.github.com>
Co-authored-by: Muhammad Farhan Khan <farhan.khan@arbisoft.com>
2025-12-01 14:13:58 +05:00
Peter Pinch
bf536c0ccd Merge pull request #37593 from mitodl/arslan/6850-add-lti-logging
chore(logging): add additional logs for LTI launch flow
2025-11-30 08:55:44 -05:00
Peter Pinch
00d1b52a82 Merge branch 'master' into arslan/6850-add-lti-logging 2025-11-28 15:38:41 -05:00
Samuel Allan
31e04c9e56 docs: add initial documentation for notifications
- Document the types used in
  COURSE_NOTIFICATION_TYPES and COURSE_NOTIFICATION_APPS.
- Port the wiki page on creating a new notification to the docs here.
- Add some miscellaneous docs and placeholder TODO notes.
- Add a data flow diagram.
- Add a short getting started guide for operators
  (mainly for getting email notifications working).

Private-ref: https://tasks.opencraft.com/browse/BB-10065
2025-11-28 11:45:04 +05:30
github-actions[bot]
aef9e53dcf feat: Upgrade Python dependency openedx-authz (#37701)
Commit generated by workflow `openedx/edx-platform/.github/workflows/upgrade-one-python-dependency.yml@refs/heads/master`

Co-authored-by: mariajgrimaldi <64440265+mariajgrimaldi@users.noreply.github.com>
Co-authored-by: Maria Grimaldi (Majo) <maria.grimaldi@edunext.co>
2025-11-27 19:23:41 +01:00
Navin Karkera
562978990a feat: store information for failed block migrations (#37691)
* Updates `ModulestoreBlockMigration` table to allow storing `null` values in `target` field for blocks that failed to migrate/import.
* Adds `unsupported_reason` field to store reason for failure.
* Add number of children blocks in failed block `unsupported_reason` field. 
* Fixes issue with blocks like `openassessment` where `url_name` field is not included in its olx during serialization.
2025-11-27 12:39:20 -05:00
Peter Pinch
cf1e104e04 Merge branch 'master' into arslan/6850-add-lti-logging 2025-11-26 17:09:59 -05:00
Muhammad Faraz Maqsood
0481d9a0b1 fix: accessibility issue on video transcripts (#37587)
This commit fixes accessibility issue for video transcripts as when a
video component's SRT file has an empty line, the transcript has an
empty link that is still interactive.

Empty links should not be interactive and should be hidden from
keyboard users as it takes extra click for them when an empty line
occurs in the transcript.

Co-authored-by: Muhammad Faraz  Maqsood <faraz.maqsood@A006-01130.local>
2025-11-26 11:17:48 -05:00
Taimoor Ahmed
56f7da908a fix: send thread_created signal after transaction commit (#37675)
Prevents notification failures with MySQL backend by ensuring signals
are only sent after database transactions commit. This fixes race
conditions where Celery workers couldn't see newly created threads.

- Added send_signal_after_commit() helper function
- Updated both thread creation paths to use the helper

Co-authored-by: Taimoor  Ahmed <taimoor.ahmed@A006-01711.local>
2025-11-26 11:43:45 +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
Arslan Ashraf
1b2bfaf89f chore(logging): add additional logs for LTI launch flow 2025-11-25 16:34:27 +05:00
Muhammad Waleed
7671c08573 feat: Add user email replacement in HTML block data rendering (#37580) 2025-11-24 18:50:54 +05:00
Feanil Patel
b1f01ed8fa feat!: Drop the legacy Tabs UI (#37557)
This change drops the legacy studio custom pages UI aka. the tab edit
page.

This work is part of https://github.com/openedx/edx-platform/issues/36108

BREAKING CHANGE: The 'legacy_studio.custom_pages' waffle flag has been
removed and the code will work as if this flag is permanently set to
False.

Co-authored-by: Kyle McCormick <kyle@axim.org>
2025-11-20 23:36:10 +00:00
Feanil Patel
d929cdb7fa feat!: Drop the legacy studio updates page. (#37544)
Remove the legacy studio updates page and its related artifacts. They
have been replaced by API and a new UI in the authoring MFE.

This cleanup is a part of https://github.com/openedx/edx-platform/issues/36108

BREAKING CHANGE: The 'legacy_studio.updates' waffle flag will no longer
be respected. The system will behave as if the flag is set to false
permanently.
2025-11-20 23:00:13 +00:00
Feanil Patel
5d0d60d426 feat!: Drop support for the legacy textbooks page. (#37545)
The legacy textbooks page has been replaced with an authoring MFE
equivalent.  We don't need to keep the old one around.

This work is part of https://github.com/openedx/edx-platform/issues/36108

BREAKING CHANGE: With this change the `legacy_studio.textbooks` waffle
flag will no longer be respected and the system will behave as if the
flag is always set to False.
2025-11-20 17:56:11 -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
8611e6110d Merge pull request #37108 from haftamuk/ESHE-37081
Fix: When clicking "Download Handout", the handout (image) overlays the video area, and the download does not start automatically.
2025-11-20 14:38:05 -05:00
Asad Ali
ab6cf6e85e revert: feat: [FC-0092] Optimize Course Info Blocks API (#37122) (#37661)
This reverts commit 7cd4170ca7.
2025-11-20 12:05:14 -05:00
Feanil Patel
1253831c52 Merge pull request #37561 from kiran1415/kiran/remove-unused-task-code
fix: removed unused task code
2025-11-20 11:17:13 -05:00
Haftamu Kebede
f5904d1223 fix: Download Handout link in a video component overlaying over the video
After applying a "download" property on html5 anchor tag, Download Handout
link in a video component initiates a direct download instead of overlaying
over the video.

Fixed issue: https://github.com/openedx/edx-platform/issues/37081
2025-11-20 18:56:28 +03:00
Feanil Patel
02c1530b48 Merge pull request #37547 from open-craft/agrendalath/start-date-masquerade
feat: add Waffle flag to control start date access for masquerading users
2025-11-20 10:29:15 -05:00
Feanil Patel
539bb7d7b2 Merge pull request #36335 from raccoongang/lunyachek/fix/instructor-rtl-remove-horizontal-scroll
fix: Remove horizontal scroll on instructor page in RTL version
2025-11-20 09:41:49 -05:00
Feanil Patel
53b5a8b55e Merge pull request #37636 from openedx/feanil/fix_make_upgrade
build: Don't have both a pip and pip-tools requirements files.
2025-11-20 09:36:33 -05:00
Daniel Wong
41acf0eb52 feat: include user and origin_server info in library archive (#37626) 2025-11-19 22:42:27 -05:00