Commit Graph

24185 Commits

Author SHA1 Message Date
Agrendalath
20f6650f53 refactor: convert from_xml to parse_xml for VideoBlock 2022-12-05 13:57:41 +01:00
Hammad Ahmad Waqas
18df1f020e Merge pull request #31389 from openedx/hammad/ENT-6470
fix: updated management command to consider in-progress courses before suggestion.
2022-12-05 17:17:54 +05:00
SaadYousaf
d71b21156b feat: add forum response event for marking responses as answered or endorsed 2022-12-05 16:35:52 +05:00
Muhammad Adeel Tajamul
7a0010ad0e feat: added topics v3 api (#31330)
Co-authored-by: adeel.tajamul <adeel.tajamul@arbisoft.com>
2022-12-05 15:07:21 +05:00
Ali Akbar
c1e4cb3a87 Merge pull request #253 from edx/moeez96/LEARNER-9001
fix: Fix retiring user auth models on disable event
2022-12-05 11:53:58 +05:00
Jenkins
6ed0a6bc4d chore(i18n): update translations 2022-12-04 15:58:36 -05:00
hammadahmadwaqas
583346f67b fix: updated management command to consider in-progress courses before suggestion. 2022-12-02 16:08:20 +05:00
Jansen Kantor
8eb3277414 feat: add problemgradereport config for writing to disk (#31385)
in the problemgradereport currently we must currently hold the entire file in memory before writing it all at once. to avoid out of memory celery issues to resolve a blocking bug for some MIT courses, add a temp waffle flag `instructor_task.use_on_disk_grade_reporting` which when activated uses this new report to (hopefully) allow the report to complete. Additional testing and consideration is required for this approach.
2022-12-01 09:48:50 -05:00
ayesha waris
ecc9a7c3e3 Merge pull request #31336 from openedx/INF-628
fix: course_staff and course_admin added in get_course api
2022-12-01 16:35:13 +05:00
Mehak Nasir
8be2b7355b fix: thread will only be returned for matching course ID (#31340) 2022-12-01 16:17:19 +05:00
ayeshoali
1363fcb501 fix: test cases fixed 2022-12-01 14:36:57 +05:00
ayeshoali
67bbf46920 fix: course_staff and course_admin added in get_course api 2022-12-01 14:33:54 +05:00
Andrew Shultz
cd1d278ba2 Merge pull request #31380 from openedx/ashultz0/more-goal-email-info
fix: wrap course goals email handle to report on errors
2022-11-30 16:06:36 -05:00
Jansen Kantor
0577944c4e temp: additional memory usage logging for problem report (#31381)
* temp: additional memory usage logging for problem report

* fixup! Merge branch 'master' into jkantor/temp-problemreport-logging

* fixup! fixup! Merge branch 'master' into jkantor/temp-problemreport-logging
2022-11-30 15:54:41 -05:00
Andrew Shultz
480e2fafe8 Merge branch 'master' into ashultz0/more-goal-email-info 2022-11-30 11:51:54 -05:00
Andy Shultz
5ff9b73da3 fix: wrap course goals email handle to report on errors
currently this is failing many runs but the exception information is
lost at some higher level. Report on it immediately.
2022-11-30 10:55:02 -05:00
Glib Glugovskiy
33968fb376 docs: ADR for signatures migration 2022-11-30 10:13:57 -05:00
Feanil Patel
5bb84e9962 Merge pull request #31366 from openedx/feanil/minimal_config
feat: Add a minimal yaml file for use with production.py
2022-11-29 15:19:18 -05:00
Feanil Patel
f83865212f feat: Add a minimal yaml file for use with production.py
Sometimes you just want to run a few paver or django commands without
having to bring up the entire development stack.
2022-11-29 14:10:04 -05:00
Navin Karkera
c302c8a22b feat: block metadata api - index_dictionary
Adds new api to return block metadata which includes index_dictionary.
Reason for new api instead of adding it to course blocks API: data like
index_dictionary are too large for the cache used by course/blocks
transformers API.
2022-11-29 10:49:36 -08:00
bydawen
b83f5fc328 fix: bootstrap classes for the program_details template (#30998)
Co-authored-by: Attiya Ishaque <atiya.ishaq@arbisoft.com>
2022-11-29 08:37:16 -05:00
Syed Sajjad Hussain Shah
9d30f45776 fix: change register button text (#31343)
VAN-1174
2022-11-25 16:01:37 +05:00
Pooja Kulkarni
e456965c36 Merge pull request #30999 from open-craft/agrendalath/invalidate_cache_on_due_date_extension
fix: regenerate the cache on due date extensions
2022-11-24 11:10:05 -05:00
Nicholas Moy
e5b4879cd4 Merge pull request #31322 from openedx/nmoy/PSRE-2015_tracking_logs
fix: change docker-production log settings
2022-11-23 11:02:07 -05:00
Nathan Sprenkle
af050d46cb feat: add enterprise UUID to learner home init data (#31328)
* feat: add enterprise UUID to return object

* style: run black
2022-11-22 12:03:43 -05:00
muhammad-ammar
91f7992754 chore: upgrade edx-enterprise to 3.58.10 2022-11-22 13:55:28 +05:00
ohnickmoy
9cd84f9a9b fix: change docker-production log settings 2022-11-21 16:33:47 -05:00
Andrew Shultz
00b35d04f5 Merge pull request #31314 from openedx/ashultz0/close-goal-hole
fix: after failing to get course, stop trying to make a course message
2022-11-21 13:29:21 -05:00
SaadYousaf
1a0906bc7a feat: add discussion event coverage for legacy experience. 2022-11-21 14:59:50 +05:00
SaadYousaf
1cb1e2f61d fix: add fix for search event for learner search in discussions 2022-11-21 14:29:14 +05:00
Syed Sajjad Hussain Shah
9478b5f422 feat: show general recommendations (#31278)
Show general recommendations for
* API failure
* and when no enrollable courses are present

VAN-1158
2022-11-21 10:48:14 +05:00
Andy Shultz
686b586ab1 fix: after failing to get course, stop trying to make a course message
we were failing to get the course and then going on to try course.field
which would generate a worse exception

also wraps the email send in an exception absorb because a single email
can fail to send for infinitely many boring reasons
2022-11-18 15:56:38 -05:00
Shahbaz Shabbir
ee6f3164c3 feat: add course enrollment email task (#31241) 2022-11-18 17:25:52 +05:00
SaadYousaf
c0631c320e fix: legacy coverage and add missing properties for reported events 2022-11-17 13:03:47 +05:00
0x29a
010ecb354a refactor: remove lms/djangoapps/debug/management directory
It contained only one management command, "dump_xml_courses", which
didn't work since the late 2015.
2022-11-16 13:08:22 +01:00
0x29a
d6c6a44ed5 refactor: remove prefer_xmodules
This function is no longer needed as all XModules have been converted to XBlocks.

XBLOCK_SELECT_FUNCTION Django setting is removed too, as it could take only `prefer_xmodules` or `default_select` values.
2022-11-16 13:08:22 +01:00
Zainab Amir
9f5596c0af feat: remove testing logs (#31297) 2022-11-16 14:00:15 +05:00
Alejandro Cardenas
bfd212b6d8 [FC-005] feat: add necessary models for Openedx survey report (#31183)
* feat: add survey_report djangoapp
* feat: add survey report cli command and query methods
* fix: add init file
* refactor: change model fields
* refactor: rename application file and rename methods
* refactor: add is_active to get course enrollments
* refactor: rename method to get active users
* refactor: remove fields useless
* test: rename mocks in command tests
* test: update test name
* docs: add README file
* docs: add selection criteria to get unique courses
* docs: update README
* test: remove useless mocks and use default modulestore
* docs: change command error message
* docs: add docs decisions
* docs: Update openedx/features/survey_report/management/commands/generate_report.py
* docs: add fields descriptions
* docs: add logs for each query
* style: add blank lines
* refactor: rename variables and add a constant for weeks
* refactor: add constant MIN_ENROLLS_ACTIVE_COURSE


Co-authored-by: henrrypg <henrry.pulgarin@edunext.co>
Co-authored-by: David Ormsbee <dave@tcril.org>
Co-authored-by: Maria Grimaldi <maria.grimaldi@edunext.co>
2022-11-15 17:47:21 -05:00
Piotr Surowiec
f419d6b194 feat: deprecate track_function and publish in ModuleSystem [BD-13] (#30046)
* feat: delete `track_function` from ModuleSystem

* feat: delete `publish` argument from ModuleSystem
2022-11-15 10:46:24 -05:00
Nathan Sprenkle
5aea84f1df fix: learner home anon user status fix (#31291)
* fix: add missing permission/auth classes to init

* fix: add missing permission class

Django was complaining about adding JWT auth without the
NotJwtRestrictedApplication class which it would add automatically. Add
the class to remove that warning.

* style: use black / isort to fix import ordering
2022-11-14 14:48:10 -05:00
Mehak Nasir
b6ee28310e feat: added not responded filter for fetch thread list api (#31275) 2022-11-11 14:56:01 +05:00
Mubbshar Anwar
994a359f20 revert: revert redesign enrollment email (#31272)
- revert changes of redesign course enrollment email PR.

VAN-1157
2022-11-10 12:10:43 +05:00
Syed Sajjad Hussain Shah
e76e0c4a07 fix: remove hotjar event code [VAN-1074] (#31269) 2022-11-09 14:31:35 +05:00
Zainab Amir
4b5f4f1eff feat: add serializer for recommendations api (#31270) 2022-11-08 17:05:28 -05:00
Jansen Kantor
c281f32595 fix: allow inactive users access to the teams dashboard and api (#31266)
* fix: allow inactive users access to the teams dashboard and api

* style: quality
2022-11-08 15:31:42 -05:00
Jeff Cohen
ff0c1d57da fix: only create one StudentModuleHistory record per request (#31262)
When a student submits a problem answer, the state is stored in a
StudentModule record containing answer, score, correctness, etc. The
record, though, is updated in multiple steps within the single request
(first the grade is updated, then the state is updated separately).
Each partial save would trigger a separate StudentModuleHistory record
to be stored resulting in duplicate and inaccurate historical records.

This solution uses the RequestCache to track within a request thread
which StudentModules are updated and a single corresponding
StudentModuleHistory id. If multiple update actions occur within the
request cycle, then modify the history record that was already
generated to ensure that each submission only results in one
StudentModuleHistory record.

This issue and its solution were discussed in:

  https://discuss.openedx.org/t/extra-history-record-stored-on-each-problem-submission/8081
2022-11-08 10:32:08 -05:00
Jeff Cohen
f03b141f05 fix: do not clear request cache when running eager Celery tasks (#31261)
Clearing the RequestCache was intended to address memory leaks in the
celery workers. Celery worker processes will process many tasks before
they are terminated. RequestCache cleanup typically happens in the
RequestCacheMiddleware class, and middleware never executes for celery.
To get around that issue, the CLEAR_REQUEST_CACHE_ON_TASK_COMPLETION
setting was created to clear the RequestCache after every task was
successfully completed.

This works fine when celery is running as a separate process, as it's
set up to do in production. But during development, the
CELERY_ALWAYS_EAGER setting variable is set to True, meaning that
celery tasks are run in the same thread as the Django Request. This is
meant to make debugging easier, as task failures run as part of the
request cycle and will raise exceptions that are visible to the
browser.

However, celery tasks are triggered from many different actions. That
means that the RequestCache was being cleared many times during the
course of processing a request. This led to behavior that was
potentially slower, but also incorrect–the RequestCache was getting
flushed in a way that wouldn't happen in any deployed environment
because celery would be running in separate processes there. This came
up when trying to fix an issue around extra history records being
created during problem submissions:

  https://discuss.openedx.org/t/extra-history-record-stored-on-each-problem-submission/8081

Furthermore, it's not necessary to prevent RequestCache memory leaks
when running in CELERY_AWLAYS_EAGER mode in development because the
middleware cleanup happens automatically–as everything is running as
part of the request/response cycle.

There are times in which we may want to run celery eagerly and still
clear the cache, such as testing. I have set
CLEAR_REQUEST_CACHE_ON_TASK_COMPLETION = False in all dev and test
environments that already have CELERY_ALWAYS_EAGER = True. The unit
test that specifically tests whether the request cache is getting
cleared upon completion of a celery task then overrides
CLEAR_REQUEST_CACHE_ON_TASK_COMPLETION = True even though
CELERY_ALWAYS_EAGER = True for the sake of that specific testing
purpose.
2022-11-07 11:48:39 -05:00
Zainab Amir
6a89635aa4 feat: update recommendations api (#31259)
- updated status codes
- for control group return general recommendations

VAN-1154
2022-11-07 15:20:01 +05:00
Muhammad Adeel Tajamul
06ac5ed4b0 feat: added sort by recent activity for activity stats api (#31252)
Co-authored-by: adeel.tajamul <adeel.tajamul@arbisoft.com>
2022-11-07 11:15:01 +05:00
Jenkins
23f49f4607 chore(i18n): update translations 2022-11-06 15:58:01 -05:00