Commit Graph

3776 Commits

Author SHA1 Message Date
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
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
Shahbaz Shabbir
ee6f3164c3 feat: add course enrollment email task (#31241) 2022-11-18 17:25:52 +05: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
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
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
alangsto
1d21277192 feat: update docker production log settings (#31217) 2022-10-27 14:06:25 -04:00
muhammad-ammar
33e822aaff chore: upgrade edx-enterprise to 3.58.0
Add a new endpoint to generate a signed token for plotly analytics.
2022-10-21 15:47:43 +05:00
Leangseu Kim
602fef2954 feat: add rollout waffle flag for leaner_home_mfe
Create flag learner_home_mfe.enabled

chore: update requested change
2022-10-20 10:54:02 -04:00
Justin Hynes
479129eb21 fix: update new update_certificate_available_date_on_course_update task to use credentials queue
[APER-1941]

* update new `update_certificate_available_date_on_course_update` task to use dedicated credentials queue (like the other import Credentials tasks)
2022-10-04 13:25:32 -04:00
Syed Sajjad Hussain Shah
96f6174d9e feat: Add 2U recommendations in dashboard [VAN-1094] (#31026) 2022-09-22 13:01:10 +05:00
Zachary Hancock
2f3c93ed9f feat: sync with exam service on course publish (#31015)
Call into the exam service instead of the edx-proctoring plugin on course publish if the course_apps.exams_ida course waffle flag is enabled. This is an early step in moving away from edx-proctoring
2022-09-20 12:38:32 -04:00
Sandeep Dubey
51b5e624b3 feat: upgrade TinyMCE v4.0.20 to TinyMCE v5.5.1 (#30335)
Co-authored-by: Arunmozhi <arunmozhi@opencraft.com>
2022-09-19 12:43:19 +02:00
Sarina Canelake
cf5fa64bd7 fix: update repo paths that stayed in the edx org
Co-authored-by: Kyle McCormick <kdmc@pm.me>
2022-09-15 14:52:28 -04:00
Sarina Canelake
69f0849165 fix: update path to .github workflows to read from openedx org 2022-09-15 14:52:28 -04:00
Sarina Canelake
4a2f231302 fix: fix github url strings (org edx -> openedx) 2022-09-15 14:52:28 -04:00
Attiya Ishaque
795fbbde8c chore: update tests according to is_register_page check (#30986) 2022-09-15 14:42:08 +05:00
Ahtisham Shahid
889c16533e feat: added new edit reason code (#30984) 2022-09-15 11:17:28 +05:00
Sagirov Evgeniy
42adcaaf4d FC-0001: Remove Persistent Course Grades Flags (#30978)
* feat: revert Fix certificate generation without persistent grades

* feat: Remove Persistent Course Grades Flags

* test: update tests
2022-09-14 14:00:01 -04:00
Ali Akbar
59ad4f4025 Merge pull request #30013 from openedx/aakbar/PROD-2521
feat: check for retired users from email
2022-09-13 14:41:47 +05:00
AliAkbar
d36fb2cd28 feat: check for retired user by email 2022-09-13 14:05:43 +05:00
Justin Hynes
9e83bf8f94 feat: Add configuration option to route View Records button to the Learner Record MFE
[APER-1922]

We are converting the legacy UI of the `records` app in the Credentials IDA (credentials.edx.org/records/, credentials.edx.org/records/programs/{uuid}, etc.) to a new MFE. Today, the Program Dashboard and the legacy (non-MFE) profile page have buttons that route learners to the Credentials IDA pages. We need to (optionally) introduce a way to route learner's to the new MFE instead.

- Introduces a new configuration setting called `LEARNER_RECORD_MICROFRONTEND_URL` (defaulting to None). This will be used by the LMS to store the base URL of the new MFE (e.g. records.stage.edx.org).
- Introduces a new waffle switch named `USE_LEARNER_RECORD_MFE`. This will be used to control whether routing learner's to the new MFE is enabled from the LMS's side.
- Updates the existing `get_credentials_records_url` function to add additional logic that will determine if we need to build a link to the legacy FE or the new MFE
- Adds tests for new and existing behavior. There were no existing unit tests for the utility function that I updated.
2022-09-07 13:44:05 -04:00
Ben Warzeski
a60b34bb7b fix: update learner home api (#30893)
* fix: update learner home api

* refactor: update learner home API pathing

* fix: remove unused logger

* fix: remove unused import

* style: make pylint happy

* style: remove extra space

* style: remove extra space

Co-authored-by: nsprenkle <nsprenkle@2u.com>
Co-authored-by: Nathan Sprenkle <nsprenkle@users.noreply.github.com>
2022-08-24 12:34:14 -04:00
Shafqat Farhan
a791759202 feat: VAN-1051 - Integrated Optimizely fullstack Client and experiment 2022-08-22 14:33:25 +05:00
Muhammad Bilal Tahir
10509bc27b chore: added whitelist urls in devstack as reesult of ENT-6109 2022-08-19 01:02:19 +05:00
Peter Kabiri
41ee16a6b7 fix: Removed hardcoded social media and mobile store images. (#30630) 2022-08-17 17:51:06 +05:00
Kyle McCormick
8edefe74ff feat!: change names of dynamic MFE config Django settings
Formerly, the settings were:

* `MFE_CONFIG` for common config.
* `MFE_CONFIG_<APP_ID>` for app-specific overrides,
  with each app getting its own Django setting.

This commit changes it to:

* `MFE_CONFIG` for common config (unchanged)
* `MFE_CONFIG_OVERRIDES` for app-specific overrides,
  where each app gets a top-level key in the dictionary.

Why the change?

* We want common.py to have a complete list of overridable settings, as
  it helps operators reason about configuration and allows us to generate
  config documentation using toggle annotations. Dynamically generating
  setting names based on arbitrary APP_IDs makes this impossible.
* getattr(...) generally makes code more complicated bug prone. Tools
  like pylint and mypy cannot effectively analyze any code that uses
  dynamic attribute access.
2022-08-16 11:38:53 -04:00
Muhammad Soban Javed
d053bba952 Revert "Revert "refactor: move common/lib/capa/capa to xmodule/capa" (#30762)"
This reverts commit 4463ee751d.
2022-07-27 15:36:08 +05:00
Jansen Kantor
33e8d26502 Jkantor/learner course regrade queue (#30778)
* temp: move recalculate_course_and_subsection_grades_for_user to new queue
2022-07-25 15:14:05 -04:00
muhammad-ammar
f56b39a0c9 feat: enable outcome surveys segment events 2022-07-25 18:54:14 +05:00
muhammad-ammar
a5aeb7034f temp: disable outcome surveys events 2022-07-22 16:48:09 +05:00
Jansen Kantor
b4d25f1dd8 temp: increase grading task rate limit (#30766)
* temp: increase grading task rate limit

* fixup! temp: increase grading task rate limit
2022-07-21 17:20:23 -04:00
Muhammad Soban Javed
4463ee751d Revert "refactor: move common/lib/capa/capa to xmodule/capa" (#30762) 2022-07-21 18:22:15 +05:00
Muhammad Soban Javed
06064b237b Merge pull request #30403 from openedx/iamsobanjaved/BOM-2582-move-common-lib-capa
refactor: move common/lib/capa/capa to xmodule/capa
2022-07-21 16:27:47 +05:00
Keith Grootboom
ed81774569 feat: added new setting CUSTOM_RESOURCE_TEMPLATES_DIRECTORY
This setting allows loading of Resource Templates from outside the
edx-platform codebase.

Operators will be able to add their own custom resource templates
without needing to fork the codebase.
2022-07-20 08:44:34 +02:00
connorhaugh
45c2858d61 Revert "feat: FC-0001 Remove Persistent Course Grades Flags (#30540)" (#30744)
This reverts commit 4a9243ef9f.
2022-07-19 13:45:31 -04:00
Sagirov Evgeniy
4a9243ef9f feat: FC-0001 Remove Persistent Course Grades Flags (#30540)
* feat: revert Fix certificate generation without persistent grades

* feat: Remove Persistent Course Grades Flags

* test: update tests
2022-07-19 11:30:37 -04:00
Soban Javed
9eba9f983a refactor!: move common/lib/capa/capa to xmodule/capa
As part of dissolving our sub-projects in edx-platform, we are moving this package under the xmodule directory.
We have fixed all the occurences of import of this package and also fixed all documents related references.
This might break your platform if you have any reference of `import capa` or `from capa import` in your codebase or in any Xblock.

Ref: https://openedx.atlassian.net/browse/BOM-2582
2022-07-19 12:20:04 +05:00
muhammad-ammar
3f294eca1e feat: fire follow up event for first time passed learners 2022-07-15 15:54:29 +05:00
Maria Fernanda Magallanes Zubillaga
f2488b10a6 feat: make it compatible with django settings 2022-07-08 01:56:15 -04:00
Maria Fernanda Magallanes Zubillaga
f6f66d0f39 refactor!: change the api naming and url 2022-07-08 00:05:10 -04:00
Maria Fernanda Magallanes Zubillaga
60e6de05fc refactor: set ENABLE_MFE_API as a top level setting 2022-07-07 23:58:42 -04:00
Maria Fernanda Magallanes Zubillaga
05b602f7dd refactor: remove unnecessary config 2022-07-07 23:57:43 -04:00
María Fernanda Magallanes Z
7f5eb296a3 feat: add mfe_api v1
This PR adds MFE API. This is part of the work that is being done to obtain the MFE Runtime Configurations and that has been discussed in the BTR WG.

Discussion: https://discuss.openedx.org/t/how-to-use-microfrontend-in-a-multitenant-instance/6936/14?u=mafermazu
MFE Runtime configuration - eduNEXT: https://docs.google.com/document/d/1-FHIQmyeQZu3311x8eYUNMru4JX7Yb3UlqjmJxvM8do/edit?usp=sharing

feat: add lms setting to set mfe config cache (#262)

Co-authored-by: María Fernanda Magallanes Z <maria.magallanes@edunext.co>

feat: make mfe config api disabled by default (#263)

* feat: make mfe config api disabled by default

* fix: simple is better than complex

test: add mfe config tests (#264)

* test: add mfe config tests

* test: fix it and simplify it

* test: correct pylint issues

fix: correct pep 8 violations

fix: add mfe api unit test in github workflow

fix: correct unit tests

refactor: move mfe api to lms

fix: try mfe api urls without regex

fix: add app_namespace in lms urls

fix: try url without conditional

Revert "fix: try url without conditional"

This reverts commit 694aab546134b4bd9ad2642e24927b42cac24459.

fix: set enable_mfe_config_api feature to true in the tests

test: try to add failed test case

Revert "test: try to add failed test case"

This reverts commit cee6bf656ab1b96492b0b6199ddff32a6d6a65bd.

docs: improve explanation and documentation

fix: ensure the response is a json object

refactor: be consistent with the variable names

fix: allow overriding mfe api config cache timeout in production

fix: handle 404 response in view

refactor: use a guard instead if-else

feat: add the possibility to show mfe specific config
2022-07-07 23:57:36 -04:00
Sagirov Evgeniy
dccb463103 FC-0001: Remove edx-jsme, Molecular Structure Problem type (#30321)
* feat: Remove edx-jsme, Molecular Structure Problem type

* feat: remove common/static/js/capa/jsme and common/static/js/capa/jsmolcalc
2022-07-06 15:51:58 -04:00
Muhammad Adeel Tajamul
7a1d263477 fix: added edit reason codes (#30698)
Co-authored-by: adeel.tajamul <adeel.tajamul@arbisoft.com>
2022-07-06 11:06:42 +05:00
Attiya Ishaque
9d1f31603e feat: [VAN-986] Add amplitude API (#30675)
* feat: [VAN-986] Add amplitude API

* feat: add suggestion

* feat: add spinner

Co-authored-by: Zainab Amir <zainab.amir@arbisoft.com>
2022-07-05 16:23:38 +05:00
Mohammad Ahtasham ul Hassan
8ef261fe07 Remove Old Pymongo pin (#30569)
* chore: unpin pymongo
2022-06-27 14:37:29 +05:00