Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Paver Removal 3/3 #34832

Merged
merged 4 commits into from
Jan 2, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/pylint-checks.yml
Original file line number Diff line number Diff line change
@@ -22,7 +22,7 @@ jobs:
- module-name: openedx-2
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/"
- module-name: common
path: "common pavelib"
path: "common"
- module-name: cms
path: "cms"
- module-name: xmodule
6 changes: 2 additions & 4 deletions .github/workflows/unit-test-shards.json
Original file line number Diff line number Diff line change
@@ -255,15 +255,13 @@
"common-with-lms": {
"settings": "lms.envs.test",
"paths": [
"common/djangoapps/",
"pavelib/"
"common/djangoapps/"
]
},
"common-with-cms": {
"settings": "cms.envs.test",
"paths": [
"common/djangoapps/",
"pavelib/"
"common/djangoapps/"
]
},
"xmodule-with-lms": {
2 changes: 1 addition & 1 deletion .github/workflows/unit-tests.yml
Original file line number Diff line number Diff line change
@@ -158,7 +158,7 @@ jobs:
shell: bash
run: |
echo "root_cms_unit_tests_count=$(pytest --disable-warnings --collect-only --ds=cms.envs.test cms/ -q | head -n -2 | wc -l)" >> $GITHUB_ENV
echo "root_lms_unit_tests_count=$(pytest --disable-warnings --collect-only --ds=lms.envs.test lms/ openedx/ common/djangoapps/ xmodule/ pavelib/ -q | head -n -2 | wc -l)" >> $GITHUB_ENV
echo "root_lms_unit_tests_count=$(pytest --disable-warnings --collect-only --ds=lms.envs.test lms/ openedx/ common/djangoapps/ xmodule/ -q | head -n -2 | wc -l)" >> $GITHUB_ENV

- name: get GHA unit test paths
shell: bash
7 changes: 3 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
@@ -93,7 +93,6 @@ requirements: dev-requirements ## install development environment requirements
# Order is very important in this list: files must appear after everything they include!
REQ_FILES = \
requirements/edx/coverage \
requirements/edx/paver \
requirements/edx-sandbox/base \
requirements/edx/base \
requirements/edx/doc \
@@ -179,7 +178,7 @@ xsslint: ## check xss for quality issuest
--config=scripts.xsslint_config \
--thresholds=scripts/xsslint_thresholds.json

pycodestyle: ## check python files for quality issues
pycodestyle: ## check python files for quality issues
pycodestyle .

## Re-enable --lint flag when this issue https://github.com/openedx/edx-platform/issues/35775 is resolved
@@ -190,13 +189,13 @@ pii_check: ## check django models for pii annotations
--app_name cms \
--coverage \
--lint

DJANGO_SETTINGS_MODULE=lms.envs.test \
code_annotations django_find_annotations \
--config_file .pii_annotations.yml \
--app_name lms \
--coverage \
--lint
--lint

check_keywords: ## check django models for reserve keywords
DJANGO_SETTINGS_MODULE=cms.envs.test \
3 changes: 2 additions & 1 deletion lms/envs/minimal.yml
Original file line number Diff line number Diff line change
@@ -2,7 +2,8 @@
#
# This is the minimal settings you need to set to be able to get django to
# load when using the production.py settings files. It's useful to point
# LMS_CFG and CMS_CFG to this file to be able to run various paver commands
# LMS_CFG and CMS_CFG to this file to be able to run various npm commands
# and make targets (e.g.: building assets, pulling translations, etc.)
# without needing a full docker setup.
#
# Follow up work will likely be done as a part of
112 changes: 0 additions & 112 deletions openedx/core/djangoapps/theming/management/commands/compile_sass.py

This file was deleted.

Original file line number Diff line number Diff line change
@@ -3,7 +3,11 @@
=============

Django command to output a single Django setting.
Useful when paver or a shell script needs such a value.
Originally used by "paver" scripts before we removed them.
Still useful when a shell script needs such a value.
Keep in mind that the LMS/CMS startup time is slow, so if you invoke this
Django management multiple times in a command that gets run often, you are
going to be sad.

This handles the one specific use case of the "print_settings" command from
django-extensions that we were actually using.
6 changes: 0 additions & 6 deletions pavelib/__init__.py

This file was deleted.

506 changes: 0 additions & 506 deletions pavelib/assets.py

This file was deleted.

Empty file removed pavelib/paver_tests/__init__.py
Empty file.
6 changes: 0 additions & 6 deletions pavelib/paver_tests/pylint_test_list.json

This file was deleted.

130 changes: 0 additions & 130 deletions pavelib/paver_tests/test_assets.py

This file was deleted.

97 changes: 0 additions & 97 deletions pavelib/paver_tests/utils.py

This file was deleted.

351 changes: 0 additions & 351 deletions pavelib/prereqs.py

This file was deleted.

Empty file removed pavelib/utils/__init__.py
Empty file.
24 changes: 0 additions & 24 deletions pavelib/utils/cmd.py

This file was deleted.

271 changes: 0 additions & 271 deletions pavelib/utils/envs.py

This file was deleted.

121 changes: 0 additions & 121 deletions pavelib/utils/process.py

This file was deleted.

Empty file removed pavelib/utils/test/__init__.py
Empty file.
83 changes: 0 additions & 83 deletions pavelib/utils/timer.py

This file was deleted.

12 changes: 0 additions & 12 deletions pavement.py

This file was deleted.

45 changes: 6 additions & 39 deletions requirements/edx/base.txt
Original file line number Diff line number Diff line change
@@ -103,7 +103,6 @@ celery==5.4.0
# openedx-learning
certifi==2024.8.30
# via
# -r requirements/edx/paver.txt
# elasticsearch
# py2neo
# requests
@@ -118,7 +117,6 @@ chardet==5.2.0
charset-normalizer==2.0.12
# via
# -c requirements/edx/../constraints.txt
# -r requirements/edx/paver.txt
# requests
# snowflake-connector-python
chem==1.3.0
@@ -393,9 +391,7 @@ djangorestframework==3.14.0
djangorestframework-xml==2.0.0
# via edx-enterprise
dnspython==2.7.0
# via
# -r requirements/edx/paver.txt
# pymongo
# via pymongo
done-xblock==2.4.0
# via -r requirements/edx/bundled.in
drf-jwt==1.19.2
@@ -493,7 +489,6 @@ edx-name-affirmation==3.0.1
edx-opaque-keys[django]==2.11.0
# via
# -r requirements/edx/kernel.in
# -r requirements/edx/paver.txt
# edx-bulk-grades
# edx-ccx-keys
# edx-completion
@@ -652,7 +647,6 @@ icalendar==6.1.0
# via -r requirements/edx/kernel.in
idna==3.10
# via
# -r requirements/edx/paver.txt
# optimizely-sdk
# requests
# snowflake-connector-python
@@ -704,15 +698,10 @@ laboratory==1.0.2
# via -r requirements/edx/kernel.in
lazy==1.6
# via
# -r requirements/edx/paver.txt
# acid-xblock
# lti-consumer-xblock
# ora2
# xblock
libsass==0.10.0
# via
# -c requirements/edx/../constraints.txt
# -r requirements/edx/paver.txt
loremipsum==1.0.5
# via ora2
lti-consumer-xblock==9.12.0
@@ -750,7 +739,6 @@ markdown==3.3.7
# xblock-poll
markupsafe==3.0.2
# via
# -r requirements/edx/paver.txt
# chem
# jinja2
# mako
@@ -762,8 +750,6 @@ meilisearch==0.33.0
# via
# -r requirements/edx/kernel.in
# edx-search
mock==5.1.0
# via -r requirements/edx/paver.txt
mongoengine==0.29.1
# via -r requirements/edx/kernel.in
monotonic==1.6
@@ -869,20 +855,15 @@ path==16.11.0
# via
# -c requirements/edx/../constraints.txt
# -r requirements/edx/kernel.in
# -r requirements/edx/paver.txt
# edx-i18n-tools
# path-py
path-py==12.5.0
# via
# edx-enterprise
# ora2
# staff-graded-xblock
paver==1.3.4
# via -r requirements/edx/paver.txt
pbr==6.1.0
# via
# -r requirements/edx/paver.txt
# stevedore
# via stevedore
pgpy==0.6.0
# via edx-enterprise
piexif==1.1.3
@@ -917,7 +898,7 @@ protobuf==5.29.1
# proto-plus
psutil==6.1.0
# via
# -r requirements/edx/paver.txt
# -r requirements/edx/kernel.in
# edx-django-utils
py2neo @ https://github.com/overhangio/py2neo/releases/download/2021.2.3/py2neo-2021.2.3.tar.gz
# via
@@ -945,9 +926,7 @@ pydantic==2.10.3
pydantic-core==2.27.1
# via pydantic
pygments==2.18.0
# via
# -r requirements/edx/bundled.in
# py2neo
# via py2neo
pyjwkest==1.4.2
# via
# -r requirements/edx/kernel.in
@@ -970,12 +949,11 @@ pylatexenc==2.10
pylti1p3==2.0.0
# via -r requirements/edx/kernel.in
pymemcache==4.0.0
# via -r requirements/edx/paver.txt
# via -r requirements/edx/kernel.in
pymongo==4.4.0
# via
# -c requirements/edx/../constraints.txt
# -r requirements/edx/kernel.in
# -r requirements/edx/paver.txt
# edx-opaque-keys
# event-tracking
# mongoengine
@@ -1017,8 +995,6 @@ python-dateutil==2.9.0.post0
# xblock
python-ipware==3.0.0
# via django-ipware
python-memcached==1.62
# via -r requirements/edx/paver.txt
python-slugify==8.0.4
# via code-annotations
python-swiftclient==4.6.0
@@ -1074,7 +1050,6 @@ regex==2024.11.6
# via nltk
requests==2.32.3
# via
# -r requirements/edx/paver.txt
# algoliasearch
# analytics-python
# cachecontrol
@@ -1138,7 +1113,6 @@ simplejson==3.19.3
six==1.17.0
# via
# -r requirements/edx/kernel.in
# -r requirements/edx/paver.txt
# analytics-python
# codejail-includes
# crowdsourcehinter-xblock
@@ -1154,9 +1128,7 @@ six==1.17.0
# fs-s3fs
# html5lib
# interchange
# libsass
# optimizely-sdk
# paver
# py2neo
# pyjwkest
# python-dateutil
@@ -1194,7 +1166,6 @@ staff-graded-xblock==2.3.0
stevedore==5.4.0
# via
# -r requirements/edx/kernel.in
# -r requirements/edx/paver.txt
# code-annotations
# edx-ace
# edx-django-utils
@@ -1218,7 +1189,6 @@ tqdm==4.67.1
# openai
typing-extensions==4.12.2
# via
# -r requirements/edx/paver.txt
# django-countries
# edx-opaque-keys
# jwcrypto
@@ -1242,7 +1212,6 @@ uritemplate==4.1.1
# google-api-python-client
urllib3==2.2.3
# via
# -r requirements/edx/paver.txt
# botocore
# elasticsearch
# py2neo
@@ -1258,8 +1227,6 @@ voluptuous==0.15.2
# via ora2
walrus==0.9.4
# via edx-event-bus-redis
watchdog==6.0.0
# via -r requirements/edx/paver.txt
wcwidth==0.2.13
# via prompt-toolkit
web-fragments==2.2.0
@@ -1280,7 +1247,7 @@ webob==1.8.9
# -r requirements/edx/kernel.in
# xblock
wrapt==1.17.0
# via -r requirements/edx/paver.txt
# via -r requirements/edx/kernel.in
xblock[django]==5.1.0
# via
# -r requirements/edx/kernel.in
1 change: 0 additions & 1 deletion requirements/edx/bundled.in
Original file line number Diff line number Diff line change
@@ -25,7 +25,6 @@
# Follow up issue to remove this fork: https://github.com/openedx/edx-platform/issues/33456
https://github.com/overhangio/py2neo/releases/download/2021.2.3/py2neo-2021.2.3.tar.gz

pygments # Used to support colors in paver command output
# i18n_tool is needed at build time for pulling translations
edx-i18n-tools>=0.4.6 # Commands for developers and translators to extract, compile and validate translations

20 changes: 2 additions & 18 deletions requirements/edx/development.txt
Original file line number Diff line number Diff line change
@@ -1184,8 +1184,6 @@ libsass==0.10.0
# via
# -c requirements/edx/../constraints.txt
# -r requirements/edx/assets.txt
# -r requirements/edx/doc.txt
# -r requirements/edx/testing.txt
loremipsum==1.0.5
# via
# -r requirements/edx/doc.txt
@@ -1263,9 +1261,7 @@ mistune==3.0.2
# -r requirements/edx/doc.txt
# sphinx-mdinclude
mock==5.1.0
# via
# -r requirements/edx/doc.txt
# -r requirements/edx/testing.txt
# via -r requirements/edx/testing.txt
mongoengine==0.29.1
# via
# -r requirements/edx/doc.txt
@@ -1458,10 +1454,6 @@ path-py==12.5.0
# edx-enterprise
# ora2
# staff-graded-xblock
paver==1.3.4
# via
# -r requirements/edx/doc.txt
# -r requirements/edx/testing.txt
pbr==6.1.0
# via
# -r requirements/edx/doc.txt
@@ -1764,10 +1756,6 @@ python-ipware==3.0.0
# -r requirements/edx/doc.txt
# -r requirements/edx/testing.txt
# django-ipware
python-memcached==1.62
# via
# -r requirements/edx/doc.txt
# -r requirements/edx/testing.txt
python-slugify==8.0.4
# via
# -r requirements/edx/doc.txt
@@ -1962,7 +1950,6 @@ six==1.17.0
# libsass
# optimizely-sdk
# pact-python
# paver
# py2neo
# pyjwkest
# python-dateutil
@@ -2228,10 +2215,7 @@ walrus==0.9.4
# -r requirements/edx/testing.txt
# edx-event-bus-redis
watchdog==6.0.0
# via
# -r requirements/edx/development.in
# -r requirements/edx/doc.txt
# -r requirements/edx/testing.txt
# via -r requirements/edx/development.in
wcwidth==0.2.13
# via
# -r requirements/edx/doc.txt
14 changes: 0 additions & 14 deletions requirements/edx/doc.txt
Original file line number Diff line number Diff line change
@@ -855,10 +855,6 @@ lazy==1.6
# xblock
lazy-object-proxy==1.10.0
# via astroid
libsass==0.10.0
# via
# -c requirements/edx/../constraints.txt
# -r requirements/edx/base.txt
loremipsum==1.0.5
# via
# -r requirements/edx/base.txt
@@ -916,8 +912,6 @@ meilisearch==0.33.0
# edx-search
mistune==3.0.2
# via sphinx-mdinclude
mock==5.1.0
# via -r requirements/edx/base.txt
mongoengine==0.29.1
# via -r requirements/edx/base.txt
monotonic==1.6
@@ -1052,8 +1046,6 @@ path-py==12.5.0
# edx-enterprise
# ora2
# staff-graded-xblock
paver==1.3.4
# via -r requirements/edx/base.txt
pbr==6.1.0
# via
# -r requirements/edx/base.txt
@@ -1228,8 +1220,6 @@ python-ipware==3.0.0
# via
# -r requirements/edx/base.txt
# django-ipware
python-memcached==1.62
# via -r requirements/edx/base.txt
python-slugify==8.0.4
# via
# -r requirements/edx/base.txt
@@ -1384,9 +1374,7 @@ six==1.17.0
# fs-s3fs
# html5lib
# interchange
# libsass
# optimizely-sdk
# paver
# py2neo
# pyjwkest
# python-dateutil
@@ -1559,8 +1547,6 @@ walrus==0.9.4
# via
# -r requirements/edx/base.txt
# edx-event-bus-redis
watchdog==6.0.0
# via -r requirements/edx/base.txt
wcwidth==0.2.13
# via
# -r requirements/edx/base.txt
4 changes: 3 additions & 1 deletion requirements/edx/kernel.in
Original file line number Diff line number Diff line change
@@ -3,7 +3,6 @@
-c ../constraints.txt

-r github.in # Forks and other dependencies not yet on PyPI
-r paver.txt # Requirements for running paver commands

# DON'T JUST ADD NEW DEPENDENCIES!!!
# Please follow these guidelines whenever you change this file:
@@ -126,13 +125,15 @@ openedx-django-wiki
path
piexif # Exif image metadata manipulation, used in the profile_images app
Pillow # Image manipulation library; used for course assets, profile images, invoice PDFs, etc.
psutil # Library for retrieving information on running processes and system utilization
pycountry
pycryptodomex
pyjwkest
# TODO Replace PyJWT usage with pyjwkest
# PyJWT 1.6.3 contains PyJWTError, which is required by Apple auth in social-auth-core
PyJWT>=1.6.3
pylti1p3 # Required by content_libraries core library to support LTI 1.3 launches
pymemcache # Python interface to the memcached memory cache daemon
pymongo # MongoDB driver
pynliner # Inlines CSS styles into HTML for email notifications
python-dateutil
@@ -159,5 +160,6 @@ unicodecsv # Easier support for CSV files with unicode
user-util # Functionality for retiring users (GDPR compliance)
webob
web-fragments # Provides the ability to render fragments of web pages
wrapt # Better functools.wrapped. TODO: functools has since improved, maybe we can switch?
XBlock[django] # Courseware component architecture
xss-utils # https://github.com/openedx/edx-platform/pull/20633 Fix XSS via Translations
27 changes: 0 additions & 27 deletions requirements/edx/paver.in

This file was deleted.

65 changes: 0 additions & 65 deletions requirements/edx/paver.txt

This file was deleted.

1 change: 1 addition & 0 deletions requirements/edx/testing.in
Original file line number Diff line number Diff line change
@@ -28,6 +28,7 @@ freezegun # Allows tests to mock the output of assorted datetime
httpretty # Library for mocking HTTP requests, used in many tests
import-linter # Tool for making assertions about which modules can import which others
isort # For checking and fixing the order of imports
mock # Deprecated alias to standard library `unittest.mock`
pycodestyle # Checker for compliance with the Python style guide (PEP 8)
polib # Library for manipulating gettext translation files, used to test paver i18n commands
pyquery # jQuery-like API for retrieving fragments of HTML and XML files in tests
14 changes: 1 addition & 13 deletions requirements/edx/testing.txt
Original file line number Diff line number Diff line change
@@ -898,10 +898,6 @@ lazy==1.6
# xblock
lazy-object-proxy==1.10.0
# via astroid
libsass==0.10.0
# via
# -c requirements/edx/../constraints.txt
# -r requirements/edx/base.txt
loremipsum==1.0.5
# via
# -r requirements/edx/base.txt
@@ -962,7 +958,7 @@ meilisearch==0.33.0
# -r requirements/edx/base.txt
# edx-search
mock==5.1.0
# via -r requirements/edx/base.txt
# via -r requirements/edx/testing.in
mongoengine==0.29.1
# via -r requirements/edx/base.txt
monotonic==1.6
@@ -1101,8 +1097,6 @@ path-py==12.5.0
# edx-enterprise
# ora2
# staff-graded-xblock
paver==1.3.4
# via -r requirements/edx/base.txt
pbr==6.1.0
# via
# -r requirements/edx/base.txt
@@ -1341,8 +1335,6 @@ python-ipware==3.0.0
# via
# -r requirements/edx/base.txt
# django-ipware
python-memcached==1.62
# via -r requirements/edx/base.txt
python-slugify==8.0.4
# via
# -r requirements/edx/base.txt
@@ -1498,10 +1490,8 @@ six==1.17.0
# fs-s3fs
# html5lib
# interchange
# libsass
# optimizely-sdk
# pact-python
# paver
# py2neo
# pyjwkest
# python-dateutil
@@ -1647,8 +1637,6 @@ walrus==0.9.4
# via
# -r requirements/edx/base.txt
# edx-event-bus-redis
watchdog==6.0.0
# via -r requirements/edx/base.txt
wcwidth==0.2.13
# via
# -r requirements/edx/base.txt
89 changes: 0 additions & 89 deletions scripts/paver_autocomplete.sh

This file was deleted.

5 changes: 0 additions & 5 deletions xmodule/tests/__init__.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,5 @@
"""
unittests for xmodule
Run like this:
paver test_lib -l ./xmodule
"""



Unchanged files with check annotations Beta

}
},
config: {
text: {

Check failure on line 358 in cms/static/cms/js/require-config.js

GitHub Actions / Quality Others (ubuntu-24.04, 3.11, 20)

Expected indentation of 12 spaces but found 10.
useXhr: () => true

Check failure on line 359 in cms/static/cms/js/require-config.js

GitHub Actions / Quality Others (ubuntu-24.04, 3.11, 20)

Expected indentation of 16 spaces but found 12.
}

Check failure on line 360 in cms/static/cms/js/require-config.js

GitHub Actions / Quality Others (ubuntu-24.04, 3.11, 20)

Expected indentation of 12 spaces but found 10.
}
});
}).call(this, require, define);
* True if summary configuration is enabled.
*/
summary_configuration_enabled: null,
/**

Check failure on line 176 in cms/static/js/models/xblock_info.js

GitHub Actions / Quality Others (ubuntu-24.04, 3.11, 20)

Expected indentation of 16 spaces but found 15.
* List of tags of the unit. This list is managed by the content_tagging module.
*/
tags: null,

Check failure on line 179 in cms/static/js/models/xblock_info.js

GitHub Actions / Quality Others (ubuntu-24.04, 3.11, 20)

Expected indentation of 16 spaces but found 15.
/**

Check failure on line 180 in cms/static/js/models/xblock_info.js

GitHub Actions / Quality Others (ubuntu-24.04, 3.11, 20)

Expected indentation of 16 spaces but found 15.
* True if the xblock is not visible to students only via links.
*/
hide_from_toc: null,

Check failure on line 183 in cms/static/js/models/xblock_info.js

GitHub Actions / Quality Others (ubuntu-24.04, 3.11, 20)

Expected indentation of 16 spaces but found 15.
/**

Check failure on line 184 in cms/static/js/models/xblock_info.js

GitHub Actions / Quality Others (ubuntu-24.04, 3.11, 20)

Expected indentation of 16 spaces but found 15.
* True iff this xblock should display a "Contains staff only content" message.
*/
hide_from_toc_message: null,

Check failure on line 187 in cms/static/js/models/xblock_info.js

GitHub Actions / Quality Others (ubuntu-24.04, 3.11, 20)

Expected indentation of 16 spaces but found 15.
},
initialize: function() {