Commit Graph

65279 Commits

Author SHA1 Message Date
Irtaza Akram
b3185ffe7b fix: env for runner 2024-05-30 15:00:49 -04:00
Irtaza Akram
2506d9373a fix: test runner 2024-05-30 15:00:49 -04:00
Irtaza Akram
99248ae992 fix: review changes 2024-05-30 15:00:49 -04:00
Irtaza Akram
5a46a3aa0f fix: tests on forks 2024-05-30 15:00:49 -04:00
Irtaza Akram
6b5f11a79b fix: merged gh-hosted into gha 2024-05-30 15:00:47 -04:00
Irtaza Akram
a6755edcbb fix: remove sudo for pip specific commands 2024-05-30 15:00:33 -04:00
Irtaza Akram
f6f75b428c fix: lynx dependency 2024-05-30 15:00:33 -04:00
Irtaza Akram
e428dd4511 fix: update github actions & remove edx runner 2024-05-30 15:00:30 -04:00
Feanil Patel
f12cd32fce Merge pull request #34858 from openedx/dependabot/github_actions/supercharge/mongodb-github-action-1.11.0
build(deps): bump supercharge/mongodb-github-action from 1.7.0 to 1.11.0
2024-05-30 14:53:02 -04:00
Feanil Patel
824bbc10a2 Merge pull request #34874 from openedx/feanil/fix_npm_install
feanil/fix npm install
2024-05-30 14:48:42 -04:00
Feanil Patel
a1f22d3978 chore: Run npm install 2024-05-29 15:17:36 -04:00
Feanil Patel
9d8cdc3bf1 fix: Bump the edx-proctoring version to the latest.
Among other things, edx-proctoring has updated how its dependencies are
managed so it doesn't shrinkwrap its dependencies.  This allows us to
further upgrade dependencies in edx-platform and fixes an issue where we
had a required dependency on fsevents that was cropping up preventing us
from `npm install`ing cleanly on linux.
2024-05-29 15:17:36 -04:00
Kristin Aoki
38320f8433 feat: grading rest api for authoring api (#34854)
* feat: grading rest api for authoring api

* fix: doc string api path
2024-05-29 14:54:00 -04:00
MueezKhan246
b264988163 Merge pull request #34871 from openedx/revert-34868-mueezkhan-edx/enterprise-version-bump-4.19.5
Revert "Bumping edx-enterprise version to 4.19.5"
2024-05-29 18:16:47 +05:00
MueezKhan246
e0785ce32d Revert "Bumping edx-enterprise version to 4.19.5" 2024-05-29 17:40:45 +05:00
MueezKhan246
a6390a26e9 Merge pull request #34868 from openedx/mueezkhan-edx/enterprise-version-bump-4.19.5
Bumping edx-enterprise version to 4.19.5
2024-05-29 16:10:11 +05:00
MueezKhan246
acc60b7b8d feat: bumping edx-enterprise version to 4.19.5 2024-05-29 10:19:11 +00:00
Alison Langston
791e317085 feat: update timeout for course reindexing (#34866) 2024-05-28 15:31:05 -04:00
Feanil Patel
4085066fea Merge pull request #34417 from qasimgulzar/qasim/DEPR/git-issue-34342
[DEPR]: Remove Neo4J Support #34342
2024-05-28 10:25:33 -04:00
Saad Yousaf
63e940d65d fix: fix and optimize search for Course Notification Preference model on django admin 2024-05-27 14:37:46 +05:00
dependabot[bot]
36da5283c2 build(deps): bump supercharge/mongodb-github-action from 1.7.0 to 1.11.0
Bumps [supercharge/mongodb-github-action](https://github.com/supercharge/mongodb-github-action) from 1.7.0 to 1.11.0.
- [Release notes](https://github.com/supercharge/mongodb-github-action/releases)
- [Changelog](https://github.com/supercharge/mongodb-github-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/supercharge/mongodb-github-action/compare/1.7.0...1.11.0)

---
updated-dependencies:
- dependency-name: supercharge/mongodb-github-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-27 04:58:12 +00:00
Jansen Kantor
3c94e17706 chore: bump ora to 6.11.1 (#34853) 2024-05-24 13:15:23 -04:00
Ivan Niedielnitsev
699614d892 feat: include units when calculating completion percentage (#34816)
This is an enhancement to the API used for the courseware navigation
sidebar.
2024-05-24 12:59:09 -04:00
Max Sokolski
a96078c1f1 Merge pull request #34807 from raccoongang/max/update-pr-template-redwood
build: nudge devs about Redwood release in github
2024-05-24 20:42:40 +09:00
MueezKhan246
0d01b6d924 Merge pull request #34843 from openedx/MueezKhan246/upgrade-edx-enterprise-be03938
feat: Upgrade Python dependency edx-enterprise
2024-05-24 16:20:03 +05:00
MueezKhan246
865547231b Merge branch 'master' into MueezKhan246/upgrade-edx-enterprise-be03938 2024-05-23 18:40:11 +05:00
MueezKhan246
c9b95568fa refactor: correcting sequence while reverting changes 2024-05-23 13:39:03 +00:00
MueezKhan246
03bcbcdbbb refactor: reverting redundant changes 2024-05-23 13:34:17 +00:00
MueezKhan246
a31375a927 refactor: manually bumping build version 2024-05-23 12:57:24 +00:00
Muhammad Soban Javed
d8675f8a06 feat: add FrontendMonitoringMiddleware in lms and studio (#34823)
* feat: add FrontendMonitoringMiddleware in lms and studio

* chore: upgrade edx-django-utils to 5.14.1
2024-05-23 16:29:59 +05:00
Ahtisham Shahid
cb14a9261a feat: added new v2 for course config api (#34804) 2024-05-23 14:46:44 +05:00
Max Sokolski
d88732fbe0 build: update nudge text for devs
Add link to the Support Development Guidelines
regarding the currently supported releases.
2024-05-23 11:59:55 +03:00
Braden MacDonald
41fa96851f docs: fix minor typos in the meilisearch feature configuration (#34838) 2024-05-22 11:48:27 -07:00
Kyle McCormick
ccf2b75204 fix: stabilize makemigrations when SITE_ID != 1 (#34787)
Some models in third_party_auth used settings.SITE_ID as a field
default, which caused Django to say migrations were out of sync whenever
settings.SITE_ID happened to be anything other than 1 for any developer:

    Your models in app(s): 'third_party_auth' have changes that are not
    yet reflected in a migration, and so won't be applied. Run
    'manage.py makemigrations' to make new migrations, and then re-run
    'manage.py migrate' to apply them.

This could easily happen if a developer is testing out site
configuration or site-specific theming and ends up with a SITE_ID other
than 1.

The fix, inspired by a StackOverflow answer [1], is to simply create
a wrapper function for the dynamic default value. The wrapper function,
rather than the current value of SITE_ID, will be serialized to the
migraiton file.

This commit includes a migration file, but from a database perspective,
the migration is a no-op.

[1] https://stackoverflow.com/a/12654998
2024-05-22 13:52:53 -04:00
Kyle McCormick
11626148d9 refactor: switch from mock to unittest.mock (#34844)
As of Python 3.3, the 3rd-party `mock` package has been subsumed into the
standard `unittest.mock` package. Refactoring tests to use the latter will
allow us to drop `mock` as a dependency, which is currently coming in
transitively through requirements/edx/paver.in.

We don't actually drop the `mock` dependency in this PR. That will happen
naturally in:

* https://github.com/openedx/edx-platform/pull/34830
2024-05-22 13:52:24 -04:00
Braden MacDonald
749e18bcee fix: don't call signal handlers like XBLOCK_UPDATED before commit (#34800)
Co-authored-by: Yusuf Musleh <yusuf@opencraft.com>
2024-05-22 10:29:22 -07:00
MueezKhan246
4123e8b7d3 Merge branch 'master' into MueezKhan246/upgrade-edx-enterprise-be03938 2024-05-22 18:41:22 +05:00
Kyle McCormick
69e5fa4227 test: check both dev and prod asset builds using npm run (#34836)
This switches the static asset check over from the deprecated
paver commands to the new 'npm run build' command. Doing so allows us
to check both the prod AND dev build, whereas before we were only
checking the prod build.

Please note that, as before, the "check" is only ensuring that the build
returns 0. It is not checking the contents of the build output.

Closes: https://github.com/openedx/edx-platform/issues/34834
2024-05-22 09:40:37 -04:00
MueezKhan246
9f42093650 feat: Upgrade Python dependency edx-enterprise
removed unencrypted columns of user data credentials in blackboard config ENT 8010

Commit generated by workflow `openedx/edx-platform/.github/workflows/upgrade-one-python-dependency.yml@refs/heads/master`
2024-05-22 13:32:13 +00:00
David Ormsbee
be03938377 refactor: update to use Learning Core's new public API
This also bumps our openedx-learning dependency to 0.10.0 (the first
version with the new openedx_learning.api package).
2024-05-21 16:05:56 -04:00
Kyle D. McCormick
f820961de5 test: actually unit test and lint remaining pavelib modules
We haven't unit-tested or linted these modules ever since testing was
moved from Jenkins to GitHub Actions.
2024-05-21 15:14:38 -04:00
Kyle D. McCormick
e64becbdf0 test: fix remaining paver tests
They haven't been run in CI in years, and had gradually become broken
2024-05-21 15:14:38 -04:00
Kyle D. McCormick
c4a1f800e9 feat!: remove paver docs, i18n, servers, and pylint
This is the first step of Paver removal.
These are the parts that we are confident are unused.

Part of: https://github.com/openedx/edx-platform/issues/34467
2024-05-21 15:14:38 -04:00
Alexander J Sheehan
5c3dd11c6a Merge pull request #34831 from openedx/asheehan-edx/enterprise-version-bump-4.19.3
feat: bumping edx-enterprise version to 4.19.3
2024-05-21 14:16:22 -04:00
Chris Chávez
0295d60332 perf: Bump version of openedx-learning for taxonomy import improvements (#34796) 2024-05-21 11:01:25 -07:00
Alexander J Sheehan
2812a706f2 feat: bumping edx-enterprise version to 4.19.3 2024-05-21 17:36:17 +00:00
Ahtisham Shahid
362899e797 fix: Added message to Course update notification in case of small text (#34819) 2024-05-21 13:31:41 +05:00
Jesper Hodge
e95d7e7e32 fix: libraries performance problem
This is an attempt to fix a performance problem on the libraries home page. When you go to studio home and click on the libraries tab, on prod it will be quick for admins but extremely slow for course instructors (> 12 seconds) and leads to timeouts. It grows with the number of libraries that are assigned to the instructor.

The Python code for the request to load libraries for a particular user goes through all existing libraries and then checks all of the user's roles for each library, which results in a complexity of O(l*r), l=libraries, r=roles. This PR improves the complexity to O(l).

The BulkRoleCache and RoleCache classes were using a python set to store all roles for a particular user. A user can have a large number of roles, and lookup speed of iterating through a set is slow (O(n)). Most roles don't have the same course id, however. So if you have the course id of the role you're looking for, we can use a dict of course ids that contain related roles. The number of roles per course id is negligible, so we arrive at a lookup speed of O(1) when looking up a user's roles that belong to a specific course id.

The BulkRoleCache now caches and stores user roles in a data structure like this:
    {
        user_id_1: {
            course_id_1: {role1, role2, role3},  # Set of roles associated with course_id_1
            course_id_2: {role4, role5, role6},  # Set of roles associated with course_id_2
            [ROLE_CACHE_UNGROUPED_ROLES_KEY]: {role7, role8}  # Set of roles not tied to any specific course or library. For example, Global Staff roles.
        },
        user_id_2: { ... }  # Similar structure for another user
    }

While this changes the data structure used to store roles under the hood and adds the new property `roles_by_course_id` to the RoleCache,
when initializing the RoleCache will store roles additionally in the previous data structure - as a flat set - in the `_roles` property accessible via `all_roles_set`. This establishes
backwards compatibility.

We are now storing roles twice in the RoleCache (in each of the two data structures), which means this takes twice as much memory, but only in the scope of a request.
2024-05-20 16:34:08 -04:00
Hamzah Ullah
e7b4db0862 chore: Upgrade edx-enterprise to 4.19.1 (#34822) 2024-05-20 15:34:35 -04:00
Maria Grimaldi
9431e96d3c fix: add in-line docs correct namespace for content_groups_for_teams (#34783) 2024-05-20 14:50:17 -04:00