Skip to content

Commit c05f932

Browse files
authored
Merge branch 'master' into salman/remove-paver-commands
2 parents 75cf11c + ab6d8cb commit c05f932

File tree

465 files changed

+21077
-10072
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

465 files changed

+21077
-10072
lines changed

.github/CODEOWNERS

+13-7
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,15 @@ lms/djangoapps/grades/
1515
lms/djangoapps/instructor/
1616
lms/djangoapps/instructor_task/
1717
lms/djangoapps/mobile_api/
18+
openedx/core/djangoapps/commerce/ @openedx/2u-infinity
1819
openedx/core/djangoapps/credentials @openedx/2U-aperture
1920
openedx/core/djangoapps/credit @openedx/2U-aperture
21+
openedx/core/djangoapps/enrollments/ @openedx/2U-aperture
2022
openedx/core/djangoapps/heartbeat/
2123
openedx/core/djangoapps/oauth_dispatch
2224
openedx/core/djangoapps/user_api/ @openedx/2U-aperture
2325
openedx/core/djangoapps/user_authn/ @openedx/2U-vanguards
26+
openedx/core/djangoapps/verified_track_content/ @openedx/2u-infinity
2427
openedx/features/course_experience/
2528
xmodule/
2629

@@ -35,15 +38,18 @@ common/djangoapps/track/
3538
lms/djangoapps/certificates/ @openedx/2U-aperture
3639

3740
# Discovery
38-
common/djangoapps/course_modes/
41+
common/djangoapps/course_modes/ @openedx/2U-aperture
3942
common/djangoapps/enrollment/
40-
lms/djangoapps/commerce/
41-
lms/djangoapps/experiments/
42-
lms/djangoapps/learner_dashboard/ @openedx/2U-aperture
43-
lms/djangoapps/learner_home/ @openedx/2U-aperture
44-
openedx/features/content_type_gating/
43+
common/djangoapps/entitlements/ @openedx/2U-aperture
44+
lms/djangoapps/branding/ @openedx/2U-aperture
45+
lms/djangoapps/commerce/ @openedx/2u-infinity
46+
lms/djangoapps/experiments/ @openedx/2u-infinity
47+
lms/djangoapps/gating/ @openedx/2u-infinity
48+
lms/djangoapps/learner_dashboard/ @openedx/2U-aperture
49+
lms/djangoapps/learner_home/ @openedx/2U-aperture
50+
openedx/features/content_type_gating/ @openedx/2u-infinity
4551
openedx/features/course_duration_limits/
46-
openedx/features/discounts/
52+
openedx/features/discounts/ @openedx/2u-infinity
4753

4854
# Ping Axim On-call if someone uses the QuickStart
4955
# https://docs.openedx.org/en/latest/developers/quickstarts/first_openedx_pr.html

.github/workflows/ci-static-analysis.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
matrix:
1111
python-version:
1212
- "3.11"
13-
os: ["ubuntu-20.04"]
13+
os: ["ubuntu-22.04"]
1414

1515
steps:
1616
- uses: actions/checkout@v4

.github/workflows/compile-python-requirements.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ defaults:
1515

1616
jobs:
1717
recompile-python-dependencies:
18-
runs-on: ubuntu-20.04
18+
runs-on: ubuntu-latest
1919

2020
steps:
2121
- name: Check out target branch

.github/workflows/js-tests.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
runs-on: ${{ matrix.os }}
1313
strategy:
1414
matrix:
15-
os: [ubuntu-20.04]
15+
os: [ubuntu-latest]
1616
node-version: [18, 20]
1717
python-version:
1818
- "3.11"

.github/workflows/lint-imports.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ on:
99
jobs:
1010
lint-imports:
1111
name: Lint Python Imports
12-
runs-on: ubuntu-20.04
12+
runs-on: ubuntu-latest
1313

1414
steps:
1515
- name: Check out branch

.github/workflows/migrations-check.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
runs-on: ${{ matrix.os }}
1414
strategy:
1515
matrix:
16-
os: [ubuntu-20.04]
16+
os: [ubuntu-22.04]
1717
python-version:
1818
- "3.11"
1919
# 'pinned' is used to install the latest patch version of Django
@@ -52,7 +52,7 @@ jobs:
5252
steps:
5353
- name: Setup mongodb user
5454
run: |
55-
mongosh edxapp --eval '
55+
docker exec ${{ job.services.mongo.id }} mongosh edxapp --eval '
5656
db.createUser(
5757
{
5858
user: "edxapp",
@@ -67,7 +67,7 @@ jobs:
6767
- name: Verify mongo and mysql db credentials
6868
run: |
6969
mysql -h 127.0.0.1 -uedxapp001 -ppassword -e "select 1;" edxapp
70-
mongosh --host 127.0.0.1 --username edxapp --password password --eval 'use edxapp; db.adminCommand("ping");' edxapp
70+
docker exec ${{ job.services.mongo.id }} mongosh --host 127.0.0.1 --username edxapp --password password --eval 'use edxapp; db.adminCommand("ping");' edxapp
7171
7272
- name: Checkout repo
7373
uses: actions/checkout@v4
@@ -126,7 +126,7 @@ jobs:
126126
if: always()
127127
needs:
128128
- check_migrations
129-
runs-on: ubuntu-latest
129+
runs-on: ubuntu-22.04
130130
steps:
131131
- name: Decide whether the needed jobs succeeded or failed
132132
# uses: re-actors/[email protected]

.github/workflows/publish-ci-docker-image.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ on:
77

88
jobs:
99
push:
10-
runs-on: ubuntu-20.04
10+
runs-on: ubuntu-latest
1111

1212
steps:
1313
- name: Checkout

.github/workflows/pylint-checks.yml

+9-9
Original file line numberDiff line numberDiff line change
@@ -8,25 +8,25 @@ on:
88

99
jobs:
1010
run-pylint:
11-
runs-on: ubuntu-20.04
11+
runs-on: ubuntu-22.04
1212
strategy:
1313
fail-fast: false
1414
matrix:
1515
include:
1616
- module-name: lms-1
17-
path: "--django-settings-module=lms.envs.test lms/djangoapps/badges/ lms/djangoapps/branding/ lms/djangoapps/bulk_email/ lms/djangoapps/bulk_enroll/ lms/djangoapps/bulk_user_retirement/ lms/djangoapps/ccx/ lms/djangoapps/certificates/ lms/djangoapps/commerce/ lms/djangoapps/course_api/ lms/djangoapps/course_blocks/ lms/djangoapps/course_home_api/ lms/djangoapps/course_wiki/ lms/djangoapps/coursewarehistoryextended/ lms/djangoapps/debug/ lms/djangoapps/courseware/ lms/djangoapps/course_goals/ lms/djangoapps/rss_proxy/"
17+
path: "lms/djangoapps/badges/ lms/djangoapps/branding/ lms/djangoapps/bulk_email/ lms/djangoapps/bulk_enroll/ lms/djangoapps/bulk_user_retirement/ lms/djangoapps/ccx/ lms/djangoapps/certificates/ lms/djangoapps/commerce/ lms/djangoapps/course_api/ lms/djangoapps/course_blocks/ lms/djangoapps/course_home_api/ lms/djangoapps/course_wiki/ lms/djangoapps/coursewarehistoryextended/ lms/djangoapps/debug/ lms/djangoapps/courseware/ lms/djangoapps/course_goals/ lms/djangoapps/rss_proxy/"
1818
- module-name: lms-2
19-
path: "--django-settings-module=lms.envs.test lms/djangoapps/gating/ lms/djangoapps/grades/ lms/djangoapps/instructor/ lms/djangoapps/instructor_analytics/ lms/djangoapps/discussion/ lms/djangoapps/edxnotes/ lms/djangoapps/email_marketing/ lms/djangoapps/experiments/ lms/djangoapps/instructor_task/ lms/djangoapps/learner_dashboard/ lms/djangoapps/learner_home/ lms/djangoapps/lms_initialization/ lms/djangoapps/lms_xblock/ lms/djangoapps/lti_provider/ lms/djangoapps/mailing/ lms/djangoapps/mobile_api/ lms/djangoapps/monitoring/ lms/djangoapps/ora_staff_grader/ lms/djangoapps/program_enrollments/ lms/djangoapps/rss_proxy lms/djangoapps/static_template_view/ lms/djangoapps/staticbook/ lms/djangoapps/support/ lms/djangoapps/survey/ lms/djangoapps/teams/ lms/djangoapps/tests/ lms/djangoapps/user_tours/ lms/djangoapps/verify_student/ lms/djangoapps/mfe_config_api/ lms/envs/ lms/lib/ lms/tests.py"
19+
path: "lms/djangoapps/gating/ lms/djangoapps/grades/ lms/djangoapps/instructor/ lms/djangoapps/instructor_analytics/ lms/djangoapps/discussion/ lms/djangoapps/edxnotes/ lms/djangoapps/email_marketing/ lms/djangoapps/experiments/ lms/djangoapps/instructor_task/ lms/djangoapps/learner_dashboard/ lms/djangoapps/learner_home/ lms/djangoapps/lms_initialization/ lms/djangoapps/lms_xblock/ lms/djangoapps/lti_provider/ lms/djangoapps/mailing/ lms/djangoapps/mobile_api/ lms/djangoapps/monitoring/ lms/djangoapps/ora_staff_grader/ lms/djangoapps/program_enrollments/ lms/djangoapps/rss_proxy lms/djangoapps/static_template_view/ lms/djangoapps/staticbook/ lms/djangoapps/support/ lms/djangoapps/survey/ lms/djangoapps/teams/ lms/djangoapps/tests/ lms/djangoapps/user_tours/ lms/djangoapps/verify_student/ lms/djangoapps/mfe_config_api/ lms/envs/ lms/lib/ lms/tests.py"
2020
- module-name: openedx-1
21-
path: "--django-settings-module=lms.envs.test openedx/core/types/ openedx/core/djangoapps/ace_common/ openedx/core/djangoapps/agreements/ openedx/core/djangoapps/api_admin/ openedx/core/djangoapps/auth_exchange/ openedx/core/djangoapps/bookmarks/ openedx/core/djangoapps/cache_toolbox/ openedx/core/djangoapps/catalog/ openedx/core/djangoapps/ccxcon/ openedx/core/djangoapps/commerce/ openedx/core/djangoapps/common_initialization/ openedx/core/djangoapps/common_views/ openedx/core/djangoapps/config_model_utils/ openedx/core/djangoapps/content/ openedx/core/djangoapps/content_libraries/ openedx/core/djangoapps/content_staging/ openedx/core/djangoapps/contentserver/ openedx/core/djangoapps/cookie_metadata/ openedx/core/djangoapps/cors_csrf/ openedx/core/djangoapps/course_apps/ openedx/core/djangoapps/course_date_signals/ openedx/core/djangoapps/course_groups/ openedx/core/djangoapps/courseware_api/ openedx/core/djangoapps/crawlers/ openedx/core/djangoapps/credentials/ openedx/core/djangoapps/credit/ openedx/core/djangoapps/dark_lang/ openedx/core/djangoapps/debug/ openedx/core/djangoapps/discussions/ openedx/core/djangoapps/django_comment_common/ openedx/core/djangoapps/embargo/ openedx/core/djangoapps/enrollments/ openedx/core/djangoapps/external_user_ids/ openedx/core/djangoapps/zendesk_proxy/ openedx/core/djangolib/ openedx/core/lib/ openedx/core/tests/ openedx/core/djangoapps/course_live/"
21+
path: "openedx/core/types/ openedx/core/djangoapps/ace_common/ openedx/core/djangoapps/agreements/ openedx/core/djangoapps/api_admin/ openedx/core/djangoapps/auth_exchange/ openedx/core/djangoapps/bookmarks/ openedx/core/djangoapps/cache_toolbox/ openedx/core/djangoapps/catalog/ openedx/core/djangoapps/ccxcon/ openedx/core/djangoapps/commerce/ openedx/core/djangoapps/common_initialization/ openedx/core/djangoapps/common_views/ openedx/core/djangoapps/config_model_utils/ openedx/core/djangoapps/content/ openedx/core/djangoapps/content_libraries/ openedx/core/djangoapps/content_staging/ openedx/core/djangoapps/contentserver/ openedx/core/djangoapps/cookie_metadata/ openedx/core/djangoapps/cors_csrf/ openedx/core/djangoapps/course_apps/ openedx/core/djangoapps/course_date_signals/ openedx/core/djangoapps/course_groups/ openedx/core/djangoapps/courseware_api/ openedx/core/djangoapps/crawlers/ openedx/core/djangoapps/credentials/ openedx/core/djangoapps/credit/ openedx/core/djangoapps/dark_lang/ openedx/core/djangoapps/debug/ openedx/core/djangoapps/discussions/ openedx/core/djangoapps/django_comment_common/ openedx/core/djangoapps/embargo/ openedx/core/djangoapps/enrollments/ openedx/core/djangoapps/external_user_ids/ openedx/core/djangoapps/zendesk_proxy/ openedx/core/djangolib/ openedx/core/lib/ openedx/core/tests/ openedx/core/djangoapps/course_live/"
2222
- module-name: openedx-2
23-
path: "--django-settings-module=lms.envs.test openedx/core/djangoapps/geoinfo/ openedx/core/djangoapps/header_control/ openedx/core/djangoapps/heartbeat/ openedx/core/djangoapps/lang_pref/ openedx/core/djangoapps/models/ openedx/core/djangoapps/monkey_patch/ openedx/core/djangoapps/oauth_dispatch/ openedx/core/djangoapps/olx_rest_api/ openedx/core/djangoapps/password_policy/ openedx/core/djangoapps/plugin_api/ openedx/core/djangoapps/plugins/ openedx/core/djangoapps/profile_images/ openedx/core/djangoapps/programs/ openedx/core/djangoapps/safe_sessions/ openedx/core/djangoapps/schedules/ openedx/core/djangoapps/service_status/ openedx/core/djangoapps/session_inactivity_timeout/ openedx/core/djangoapps/signals/ openedx/core/djangoapps/site_configuration/ openedx/core/djangoapps/system_wide_roles/ openedx/core/djangoapps/theming/ openedx/core/djangoapps/user_api/ openedx/core/djangoapps/user_authn/ openedx/core/djangoapps/util/ openedx/core/djangoapps/verified_track_content/ openedx/core/djangoapps/video_config/ openedx/core/djangoapps/video_pipeline/ openedx/core/djangoapps/waffle_utils/ openedx/core/djangoapps/xblock/ openedx/core/djangoapps/xmodule_django/ openedx/core/tests/ openedx/features/ openedx/testing/ openedx/tests/ openedx/core/djangoapps/learner_pathway/ openedx/core/djangoapps/notifications/ openedx/core/djangoapps/staticfiles/ openedx/core/djangoapps/content_tagging/"
23+
path: "openedx/core/djangoapps/geoinfo/ openedx/core/djangoapps/header_control/ openedx/core/djangoapps/heartbeat/ openedx/core/djangoapps/lang_pref/ openedx/core/djangoapps/models/ openedx/core/djangoapps/monkey_patch/ openedx/core/djangoapps/oauth_dispatch/ openedx/core/djangoapps/olx_rest_api/ openedx/core/djangoapps/password_policy/ openedx/core/djangoapps/plugin_api/ openedx/core/djangoapps/plugins/ openedx/core/djangoapps/profile_images/ openedx/core/djangoapps/programs/ openedx/core/djangoapps/safe_sessions/ openedx/core/djangoapps/schedules/ openedx/core/djangoapps/service_status/ openedx/core/djangoapps/session_inactivity_timeout/ openedx/core/djangoapps/signals/ openedx/core/djangoapps/site_configuration/ openedx/core/djangoapps/system_wide_roles/ openedx/core/djangoapps/theming/ openedx/core/djangoapps/user_api/ openedx/core/djangoapps/user_authn/ openedx/core/djangoapps/util/ openedx/core/djangoapps/verified_track_content/ openedx/core/djangoapps/video_config/ openedx/core/djangoapps/video_pipeline/ openedx/core/djangoapps/waffle_utils/ openedx/core/djangoapps/xblock/ openedx/core/djangoapps/xmodule_django/ openedx/core/tests/ openedx/features/ openedx/testing/ openedx/tests/ openedx/core/djangoapps/notifications/ openedx/core/djangoapps/staticfiles/ openedx/core/djangoapps/content_tagging/"
2424
- module-name: common
25-
path: "--django-settings-module=lms.envs.test common pavelib"
25+
path: "common pavelib"
2626
- module-name: cms
27-
path: "--django-settings-module=cms.envs.test cms"
27+
path: "cms"
2828
- module-name: xmodule
29-
path: "--django-settings-module=lms.envs.test xmodule"
29+
path: "xmodule"
3030

3131
name: pylint ${{ matrix.module-name }}
3232
steps:
@@ -75,7 +75,7 @@ jobs:
7575
if: always()
7676
needs:
7777
- run-pylint
78-
runs-on: ubuntu-latest
78+
runs-on: ubuntu-22.04
7979
steps:
8080
- name: Decide whether the needed jobs succeeded or failed
8181
# uses: re-actors/[email protected]

.github/workflows/quality-checks.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
runs-on: ${{ matrix.os }}
1414
strategy:
1515
matrix:
16-
os: [ubuntu-20.04]
16+
os: [ubuntu-22.04]
1717
python-version:
1818
- "3.11"
1919
node-version: [20]

.github/workflows/semgrep.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
runs-on: "${{ matrix.os }}"
1818
strategy:
1919
matrix:
20-
os: ["ubuntu-20.04"]
20+
os: ["ubuntu-latest"]
2121
python-version:
2222
- "3.11"
2323

.github/workflows/static-assets-check.yml

+1-4
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
runs-on: ${{ matrix.os }}
1313
strategy:
1414
matrix:
15-
os: [ubuntu-20.04]
15+
os: [ubuntu-22.04]
1616
python-version:
1717
- "3.11"
1818
node-version: [18, 20]
@@ -72,9 +72,6 @@ jobs:
7272
run: |
7373
pip install -r requirements/edx/assets.txt
7474
75-
- name: Initiate Mongo DB Service
76-
run: sudo systemctl start mongod
77-
7875
- name: Add node_modules bin to $Path
7976
run: echo $GITHUB_WORKSPACE/node_modules/.bin >> $GITHUB_PATH
8077

.github/workflows/unit-tests.yml

+29-7
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ concurrency:
1515
jobs:
1616
run-tests:
1717
name: ${{ matrix.shard_name }}(py=${{ matrix.python-version }},dj=${{ matrix.django-version }},mongo=${{ matrix.mongo-version }})
18-
runs-on: ubuntu-20.04
18+
runs-on: ubuntu-22.04
1919
strategy:
2020
matrix:
2121
python-version:
@@ -66,7 +66,29 @@ jobs:
6666

6767
- name: install system requirements
6868
run: |
69-
sudo apt-get update && sudo apt-get install libmysqlclient-dev libxmlsec1-dev lynx
69+
sudo apt-get update && sudo apt-get install libmysqlclient-dev libxmlsec1-dev lynx openssl
70+
71+
# This is needed until the ENABLE_BLAKE2B_HASHING can be removed and we
72+
# can stop using MD4 by default.
73+
- name: enable md4 hashing in libssl
74+
run: |
75+
cat <<EOF | sudo tee /etc/ssl/openssl.cnf
76+
# Use this in order to automatically load providers.
77+
openssl_conf = openssl_init
78+
79+
[openssl_init]
80+
providers = provider_sect
81+
82+
[provider_sect]
83+
default = default_sect
84+
legacy = legacy_sect
85+
86+
[default_sect]
87+
activate = 1
88+
89+
[legacy_sect]
90+
activate = 1
91+
EOF
7092
7193
- name: install mongo version
7294
run: |
@@ -142,7 +164,7 @@ jobs:
142164
overwrite: true
143165

144166
collect-and-verify:
145-
runs-on: ubuntu-20.04
167+
runs-on: ubuntu-22.04
146168
steps:
147169
- uses: actions/checkout@v4
148170
- name: Setup Python
@@ -207,7 +229,7 @@ jobs:
207229
# https://github.com/orgs/community/discussions/33579
208230
success:
209231
name: Unit tests successful
210-
runs-on: ubuntu-20.04
232+
runs-on: ubuntu-22.04
211233
if: always()
212234
needs: [run-tests]
213235
steps:
@@ -218,7 +240,7 @@ jobs:
218240
jobs: ${{ toJSON(needs) }}
219241

220242
compile-warnings-report:
221-
runs-on: ubuntu-20.04
243+
runs-on: ubuntu-22.04
222244
needs: [run-tests]
223245
steps:
224246
- uses: actions/checkout@v4
@@ -246,7 +268,7 @@ jobs:
246268
overwrite: true
247269

248270
merge-artifacts:
249-
runs-on: ubuntu-20.04
271+
runs-on: ubuntu-22.04
250272
needs: [compile-warnings-report]
251273
steps:
252274
- name: Merge Pytest Warnings JSON Artifacts
@@ -266,7 +288,7 @@ jobs:
266288
# Combine and upload coverage reports.
267289
coverage:
268290
if: (github.repository == 'edx/edx-platform-private') || (github.repository == 'openedx/edx-platform' && (startsWith(github.base_ref, 'open-release') == false))
269-
runs-on: ubuntu-20.04
291+
runs-on: ubuntu-22.04
270292
needs: [run-tests]
271293
strategy:
272294
matrix:

.github/workflows/upgrade-one-python-dependency.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ defaults:
2828

2929
jobs:
3030
upgrade-one-python-dependency:
31-
runs-on: ubuntu-20.04
31+
runs-on: ubuntu-latest
3232

3333
steps:
3434
- name: Check out target branch

.github/workflows/verify-dunder-init.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
jobs:
99
verify_dunder_init:
1010
name: Verify __init__.py Files
11-
runs-on: ubuntu-20.04
11+
runs-on: ubuntu-latest
1212

1313
steps:
1414
- name: Check out branch

.readthedocs.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ version: 2
33
build:
44
os: "ubuntu-22.04"
55
tools:
6-
python: "3.8"
6+
python: "3.12"
77

88
sphinx:
99
configuration: docs/conf.py

0 commit comments

Comments
 (0)