Commit Graph

66655 Commits

Author SHA1 Message Date
Hassan Raza
40c82c2ff4 feat: Group ora staff notifications (#36440)
* feat: Group ora staff notifications

* fix: Revert default change for ora staff notifications

* fix: update edx-ora2 version
2025-04-09 14:34:07 +05:00
Kyle McCormick
0120179531 build: Switch off deprecated C-Hive NPM cache (#36502)
JS tests are failing because we are using a discontinued GHA caching service:
https://github.blog/changelog/2025-03-20-notification-of-upcoming-breaking-changes-in-github-actions/#decommissioned-cache-service-brownouts

This service is used by the unsupported C-Hive caching action which we are
relying on: https://github.com/c-hive/gha-npm-cache

We are switching to the supported caching mechanims which is provided by
setup-node:
https://github.com/actions/setup-node?tab=readme-ov-file#caching-global-packages-data
2025-04-08 13:00:56 -04:00
Muhammad Adeel Tajamul
7cb3196a1a feat: prevent sending notification digest email to disabled users (#36498) 2025-04-08 11:24:26 +05:00
Tim McCormack
6c638572a7 test: Delete flaky test test_rate_limiting_registration_view (#36491)
Deleted out of `RegistrationViewTestV1` although the failure was observed
in `RegistrationViewTestV2` which inherits from it.

Deleted according to flaky test process:
https://openedx.atlassian.net/wiki/spaces/AC/pages/4306337795/Flaky+Test+Process

Flaky test ticket:
- https://github.com/openedx/edx-platform/issues/36490
2025-04-07 14:52:39 -04:00
github-actions[bot]
25ec03ccbd feat: Upgrade Python dependency edx-enterprise (#36492)
chore: upgrade edx-enterprise to 5.12.3

Commit generated by workflow `openedx/edx-platform/.github/workflows/upgrade-one-python-dependency.yml@refs/heads/master`

Co-authored-by: bcitro <67378070+bcitro@users.noreply.github.com>
2025-04-07 14:39:32 -04:00
sarina
27848143c1 docs: Update refs to docs.edx.org 2025-04-07 11:33:49 -04:00
Jillian
94468ef4b3 Finishes refactoring libraries APIs [FC-0083] (#36468)
Addresses libraries API TODOs introduced by https://github.com/openedx/edx-platform/pull/36371
2025-04-07 14:17:04 +00:00
Taimoor Ahmed
0595e5a57d fix: legacy forum issues (#36470)
Co-authored-by: Taimoor  Ahmed <taimoor.ahmed@A006-01434.local>
2025-04-07 19:04:14 +05:00
Muhammad Faraz Maqsood
0d60ba3265 chore: rename course optimizer name in dropdown 2025-04-07 10:39:50 +05:00
Marlon Keating
8594293bc6 Merge pull request #36486 from openedx/marlonkeating/upgrade-edx-enterprise-8029185
feat: Upgrade Python dependency edx-enterprise
2025-04-04 13:30:43 -07:00
marlonkeating
3aabab2b2c feat: Upgrade Python dependency edx-enterprise
fix: assign_learners unpack args dictionary before using in query filter

Commit generated by workflow `openedx/edx-platform/.github/workflows/upgrade-one-python-dependency.yml@refs/heads/master`
2025-04-04 20:05:45 +00:00
Feanil Patel
80291855f4 Merge pull request #36430 from openedx/feanil/update_courseware_links
feanil/update courseware links
2025-04-04 15:04:26 -04:00
Feanil Patel
cdf26039e6 test: Remove reference to the courseware url.
The courseware URL is going away but it's just used here to test the
middleware.  That can be test with other urls that are relevant to this
middleware.

Note, I was unable to re-produce the failures so I've put back using the
standard `reverse` logic for fetching the URL in the test.
2025-04-04 14:01:19 -04:00
Feanil Patel
d423775012 test: Replace calls to reverse('courseware')
We want to remove this page and URL endpoint so we're removing all the
references in the code that might point to this page.  It was replaced
by the sequences page in the Learning MFE years ago but the old pages
were never cleaned up. We are replacing the calls with the URL for the
courseware in the learning MFE.

See https://github.com/openedx/edx-platform/issues/35803 for more
details.
2025-04-04 14:01:19 -04:00
Marlon Keating
502a0d732e Merge pull request #36472 from openedx/marlonkeating/upgrade-edx-enterprise-52f2231
feat: Upgrade Python dependency edx-enterprise
2025-04-04 09:44:12 -07:00
Marlon Keating
37daf241f6 Merge branch 'master' into marlonkeating/upgrade-edx-enterprise-52f2231 2025-04-04 08:25:36 -07:00
Hassan Raza
bf2959e8fc fix: Optimize queries for Course Notification Preferences Admin (#36479) 2025-04-04 15:32:45 +05:00
Muhammad Faraz Maqsood
87688af610 fix: move links with 500 status to forbidden links
move links with 500 status_code to external forbidden links category for manual checking
2025-04-04 10:51:12 +05:00
marlonkeating
4e811a6966 feat: Upgrade Python dependency edx-enterprise
fix: assign_learners use case insensitive lookup with received email addresses

Commit generated by workflow `openedx/edx-platform/.github/workflows/upgrade-one-python-dependency.yml@refs/heads/master`
2025-04-03 19:10:37 +00:00
Justin Hynes
52f2231f20 fix: make the issued date displayed on previewed certificates match real certificates (#36471)
* fix: make the issued date displayed on previewed certificates match real certificates

This PR fixes an inconsistency in the dates displayed on certificates previewed via Studio with "real" certificates rendered to users.
2025-04-03 13:43:51 -04:00
Feanil Patel
fb62eaf94c Merge pull request #36372 from jciasenza/jciasenza
fix: updated existing enzyme tests to use react testing library
2025-04-03 09:34:59 -04:00
Feanil Patel
e3c5495537 Merge branch 'master' into jciasenza 2025-04-03 09:14:56 -04:00
sarina
1e3074a3f9 docs: Update edx.rtd.io links to docs.openedx.org 2025-04-02 12:10:56 -04:00
Justin Hynes
61879b8caf fix: ensure we are selecting the correct date for self-paced courses (#36465)
It is possible for self-paced courses to be configured with a display behavior of "END" even though this configuration option should be invalid. The fix to this problem is beyond the scope of this PR. However, we can ensure we are selecting the correct display date for the certificate with a little bit of defensive coding.

I've added a check to ensure that we only use the end date of the course when the course is instructor-paced and configured with a display behavior of "END".
2025-04-02 11:19:59 -04:00
Chris Chávez
1c14c3a518 feat: Update containers in search index on components update/delete [FC-0083] (#36432)
* feat: Added get_containers_contains_component in containers api with tests

* feat: Add publish_status to containers search document

* feat: Add LIBRARY_CONTAINER_UPDATED whend deleted a component inside a container

* feat: Send LIBRARY_CONTAINER_UPDATED signal when updating component of container

* fix: Bugs sending LIBRARY_CONTAINER_UPDATED signal

* feat: Add publish_status of container as PublishStatus.Never by default

* refactor: ContentLibraryContainersTest to use update_container_children to add components

* style: Clean code after fix conflicts

* fix: Broken lint

* fix: lint
2025-04-02 18:46:41 +05:30
Feanil Patel
3bda03fa4b Merge pull request #36463 from openedx/feanil/geoip2-bot-update-country-database-f5c17bb
Update GeoLite Database
2025-04-01 15:47:16 -04:00
feanil
c934166319 chore: geoip2: update maxmind geolite country database 2025-04-01 03:26:11 +00:00
Ihor Romaniuk
f5c17bb88c feat: [FC-0070] add events and style for rendering Split xblock in chromeless template (#35813)
This feature introduces functionalities to improve XBlock interactions within iframes:

  * Add styles that adopt default styles for Split Test which renders chromless template via iframe in MFE Authoring.
  * When the isIframeEmbed option is enabled, the XBlock sends a postMessage to the parent window. When sending such a message, the standard link transition is cancelled and the transition is carried out in MFE Authoring.
2025-03-31 18:31:59 -03:00
Robert Raposa
e5cafb6cc0 docs: fix minor typo (#36216) 2025-03-31 09:23:42 -04:00
Navin Karkera
bcaa79cc38 feat: api for adding, removing and updating components in container (#36434)
* feat: add components to container api

* feat: remove and replace components in container api

* refactor: container childern api

* chore: fix lint issues

* temp: install openedx-learning dev branch

* feat: update publish_status and children count in index

* chore: fix mypy issues

* test: fix reindex test

* refactor: rebase and fix conflicts

* test: update test to check signals

* docs: document can_stand_alone flag

* chore: bump openedx-learning version
2025-03-31 17:40:17 +05:30
jciasenza
bae47af758 fix: updated existing enzyme tests to use react testing library 2025-03-28 17:45:48 -03:00
Deborah Kaplan
896ca99c79 chore: calling other djangoapps from API instead of model (#36448)
switching  from calling other djangoapps via direct model access to
calling from API. This included  adding an API in the Student app.

FIXES: APER-3972
2025-03-28 12:14:21 -04:00
Hina Khadim
3834f20841 fix: sort sections in course-optimizer before returning result (#36441) 2025-03-28 19:34:29 +05:00
Braden MacDonald
1ca57ec129 Basic CRUD REST Endpoints for units in content libraries [FC-0083] (#36371)
* refactor: convert libraries API from attr.s to dataclass, fix types

* fix: make corresponding updates to 'search' code

* feat: use new version of openedx-learning with containers support

* temp: Use opencraft branch of opaquekeys

* refactor: Use LibraryElementKey instead of LibraryCollectionKey

* refactor: split libraries API & REST API up into smaller modules

* feat: new REST API for units in content libraries

* feat: python+REST API to get a unit

* feat: auto-generate slug/key/ID from title of units

* feat: generate search index documents for containers

* refactor: rename LibraryElementKey to LibraryItemKey

* fix: lint error

* feat: adds new units to search index on create/update

and when running reindex_studio.

Updates requirements for openedx-events and openedx-learning to support
these changes.

* fix: pylint

* fix: temp requirement

* fix: search index container events/tasks

* feat: add get_library_container_usage_key to libraries API

and use it when search indexing containers

* fix: index all containers during reindex_studio

* chore: bump openedx-events requirement

* fix: address review comments

* chore: bumps openedx-learning to 0.19.1

* fix: rename api method to library_container_locator

since container keys are locators, not usage keys

* chore: bumps opaque-keys dependency

* test: fix misnamed unit_usage_key

* feat: adds APIs to update or delete a container (#757)

* feat: adds python and REST APIs to update a container's display_name
* refactor: adds _get_container method to api to reduce code duplication
* feat: adds python and REST APIs to delete a container
* test: add container permission tests

---------

Co-authored-by: XnpioChV <xnpiochv@gmail.com>
Co-authored-by: Jillian Vogel <jill@opencraft.com>
Co-authored-by: Rômulo Penido <romulo.penido@gmail.com>
2025-03-28 18:55:04 +05:30
Ahtisham Shahid
79f33a670a fix: notification count only for web (#36459) 2025-03-28 13:13:20 +00:00
Tim McCormack
1303965a29 feat: Also set MPLCONFIGDIR to make matplotlib complain less (#36456)
Example output from running `import matplotlib; 1/0`, before and after the change:

```diff
--- tmp/before	2025-03-28 03:34:06.633689552 +0000
+++ tmp/after	2025-03-28 03:34:37.268688891 +0000
@@ -1,6 +1,5 @@
-Matplotlib created a temporary cache directory at /tmp/codejail-hveq16ah/tmp/matplotlib-tv0c_vzt because the default path (/home/sandbox/.config/matplotlib) is not a writable directory; it is highly recommended to set the MPLCONFIGDIR environment variable to a writable directory, in particular to speed up the import of Matplotlib and to better support multiprocessing.
 Traceback (most recent call last):
   File "jailed_code", line 19, in <module>
     exec(code, g_dict)
   File "<string>", line 1, in <module>
 ZeroDivisionError: division by zero
```
2025-03-28 07:31:50 -04:00
Mubbshar Anwar
f32b08b753 feat: add new param in url (#36458)
Add new param in ecommerce url to calculate program price based on course keys

SONIC-918
2025-03-28 14:19:36 +05:00
Muhammad Faraz Maqsood
646c2ac898 fix: move links with status None to forbidden link
- move external links with status None to external forbidden links
- also modified the tests that fails for previous code
2025-03-28 12:19:12 +05:00
Muhammad Umar Khan
c6f75dfd2e chore: use pickle to compute collected_blocksture size before cacheing (#36455)
Co-authored-by: M Umar Khan <umar.khan@A006-01609.local>
2025-03-27 21:01:25 +05:00
Jansen Kantor
5e61a1d959 feat: allow transcripts to work with more than two-letter language codes (#36419)
* feat: allow transcripts to work with more than two-letter language codes

* style: quality

* fixup! Merge branch 'master' into jkantor/video-transcript-codes

* fix: s/LANGUAGES_DICT/LANGUAGE_DICT/
2025-03-27 11:30:44 -04:00
Justin Hynes
f99b89c8c5 feat: update date selection logic when rendering course certs (#36447)
Fixes: https://github.com/openedx/platform-roadmap/issues/423

This PR updates the logic for determining the issued date shown on course certificates. For courses with a display behavior set to 'end date of the course', certificates earned by learners will now show the course run’s end date as the issued date.
2025-03-27 08:41:38 -04:00
renovate[bot]
215cfb5731 chore(deps): update dependency selenium-webdriver to v4.30.0 (#36454)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-27 12:24:40 +00:00
Hassan Raza
dc548edeca fix: user unsub preference removal on email enable through account preferences (#36451) 2025-03-27 16:15:40 +05:00
Muhammad Umar Khan
9f5500a7f4 chore: use zpickle to compute collected_blocksture size before cacheing (#36452)
Co-authored-by: M Umar Khan <umar.khan@A006-01609.local>
2025-03-27 13:30:03 +05:00
irfanuddinahmad
dc8896ee73 Merge pull request #36444 from openedx/irfanuddinahmad/upgrade-edx-enterprise-bf53eaa
feat: Upgrade Python dependency edx-enterprise
2025-03-26 11:31:55 +05:00
Muhammad Faraz Maqsood
9706caed6a chore: remove braze client settings from edx-platform 2025-03-26 11:21:56 +05:00
Muhammad Faraz Maqsood
591008280f chore: rename braze_client to email_client 2025-03-26 11:21:56 +05:00
irfanuddinahmad
f7e037e340 feat: Upgrade Python dependency edx-enterprise
feat: external_identifier added as url param in course_run_url

Commit generated by workflow `openedx/edx-platform/.github/workflows/upgrade-one-python-dependency.yml@refs/heads/master`
2025-03-26 04:49:41 +00:00
Rodrigo Martin
bf53eaa9bb fix: video transcript links wrapping up (#36428) 2025-03-25 10:56:23 -03:00
Deborah Kaplan
ce8d3211f9 chore: improving programs rest API docs, type hints (#36438)
* chore:  improving programs rest API docs, type hints

reformatting the docstrings  so they appear correctly in the  openAPI
docs.
* moving them into the `GET`
* some cleanup and simplification of language
* removing real data that refers to specific hosts

regenerated the open API documentation.

also adding type hints to the API and telling `mypy`  to check this
file.  This was primarily because these models are confusing enough in
order to verify that the documentation was correct I had to do a lot of
jumping through the code.

FIXES: APER-3950
2025-03-25 09:39:25 -04:00