Commit Graph

62123 Commits

Author SHA1 Message Date
Varsha
feec364653 Merge pull request #31016 from openedx/varshamenon4/show-exam-info
feat: show exam info in course outline
2022-10-26 13:25:58 -04:00
Varsha Menon
c4b2c49ab6 feat: show exam info in course outline 2022-10-26 14:28:27 +00:00
Andrew Shultz
92702054b3 Merge pull request #31208 from openedx/ashultz0/proctoring4130
update proctoring to 4.13.0
2022-10-26 10:07:46 -04:00
Andy Shultz
d89751fb01 fix: pick up a due date fix in proctoring 4.13.0 2022-10-26 09:26:03 -04:00
Mohammad Ahtasham ul Hassan
c349f9318d Install xblock-google-drive from pypi (#31201)
* chore: install xblock-google-drive from pypi
2022-10-26 15:48:38 +05:00
Nathan Sprenkle
32733e43cc temp: added debug logging to init view (#31204)
Also involved reordering some code into more logical groupings.
2022-10-25 16:21:48 -04:00
Saad Ali
62c13db64d chore: update Dockerifle to run apps as a low privileged user (#31179) 2022-10-25 16:12:54 -04:00
Brian Citro
8ec0f06808 Merge pull request #31202 from openedx/bcitro/ENT-6451
chore: bump enterprise version
2022-10-25 12:22:34 -04:00
Brian Citro
cef28c6dec chore: bump enterprise version 2022-10-25 11:34:06 -04:00
Navin Karkera
a959c5d35f fix: preview mode navigation previous button (that uses legacy UI)
Legacy UI: Previous button should use prev_url if it in first
position. In studio UI, it should always use prev_url. To make this
possible we checking length of contents which is always zero for studio
and more than 0 for legacy UI.
2022-10-25 17:23:10 +02:00
Mohammad Ahtasham ul Hassan
3f46d489eb chore: install xblock-drag-and-drop from pypi (#31196) 2022-10-25 13:09:50 +05:00
Sagirov Eugeniy
3f3d0d25d8 feat!: Remove inheritance-related code from Old Mongo 2022-10-24 11:58:44 -04:00
Zachary Hancock
672b1341c4 chore: update edx-proctoring python and js (#31185) 2022-10-24 11:09:23 -04:00
Jenkins
d4fab3baaf chore(i18n): update translations 2022-10-24 10:44:58 -04:00
Rebecca Graber
b8d13812a4 feat: remove constraint on and upgrade openedx-events, edx-event-bus-kafka (#31182)
This will remove the "effort" field from COURSE_CATALOG_INFO_CHANGED event data
2022-10-24 08:03:01 -04:00
Jansen Kantor
4cd92ec12b fix: remove psudosessioncourseserializer as we now have access to courseoverviews (#31187) 2022-10-21 10:08:14 -04:00
Muhammad Ammar
896b00fb6c Merge pull request #31192 from openedx/ammar/upgrade-edx-enterprise-to-3.58.0
chore: upgrade edx-enterprise to 3.58.0
2022-10-21 17:15:44 +05: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
Kyle McCormick
5bc00b373c revert: Optimize and reorganize GitHub-hosted dependencies (attempt 2) (#31184)
codejail is specified twice: once as `edx-codejail==3.3.0` (correct)
and once as `codejail==3.1.3` (incorrect).

We are reverting everything now, and later we will fix
the original PR (https://github.com/openedx/edx-platform/pull/31104)later.

This reverts commit 475cb801cd.
This reverts commit 23ebd5a113.
This reverts commit 545b2dc0d8.
This reverts commit c417455b4e.
This reverts commit cce13a5011.
This reverts commit edfd66498b.
2022-10-20 14:55:01 -04:00
Feanil Patel
eb885b5de8 Merge pull request #31181 from openedx/feanil/remove_local_issue_templates
build!: Revert to default issue templates.
2022-10-20 14:01:18 -04:00
Kyle McCormick
475cb801cd build: make compile-requirements
Copmiles the changes made to GitHub-hosted requirements
in previous commits. Should result in no functional
changes to edx-platform.
2022-10-20 13:15:46 -04:00
Kyle McCormick
23ebd5a113 build: upgrade codejail from 3.1.3 to 3.3.0
Changes: https://github.com/openedx/codejail/compare/3.1.3...3.3.0

The only notable change here is that codejail's setup.py
has been fixed so that it includes all necessary files
in its distribution. This addresses an issue that happened
last time we tried to update codejail's pin in edx-platform
to be a wheel instead of editable (development) mode:
the proxy_main.py and memory_stress.py files were missing.
2022-10-20 13:15:46 -04:00
Kyle McCormick
545b2dc0d8 build: install GitHub-hosted dependencies as wheels
We update github.in to use the proper git-based depencency
format specified in the file comment. This format installs
a package as a pre-built wheel:

    git+https://github.com/...

instead of a development-mode editable requirement:

   -e https://github.com/...

Installing packages in editable mode increases the amount of time
it takes to install edx-platform  dependencies, increases the
resulting virtual environment's size, and installs packages in a
way that has several subtle differences compared to the way
wheels are installed:
https://setuptools.pypa.io/en/latest/userguide/development_mode.html#limitations

NOTE: This commit also upgrades django-require its latest version.
(changelog:
https://github.com/openedx/django-require/compare/0c54ad...f4f01e)
The difference between the current version and the latest version
is entirely clerical; there are no code changes.

NOTE: This commit also upgrades blockstore from 1.2.4 to 1.2.5
(changelog:
https://github.com/openedx/blockstore/compare/1.2.4...1.2.5).
The only outward-facing difference between those two releases
is that 1.2.4 can only be installed in editable mode, whereas
1.2.5 has its setup.py fixed so that it can be installed as
a pre-build wheel.
2022-10-20 13:15:46 -04:00
Kyle McCormick
c417455b4e style: alphabetize GitHub-based dependencies 2022-10-20 13:15:46 -04:00
Kyle McCormick
cce13a5011 docs: remove section headers from github.in
They give the impression that, for example,
third-party XBlocks belong in github.in.
In reality, GitHub-hosted requirements should be avoided
in all circumstances. Third-party XBlocks are best
added to base.in as a PyPI-hosted dependency.

Furthermore, the existing section headers are not
even being followed.
2022-10-20 13:15:46 -04:00
Kyle McCormick
edfd66498b docs: update & improve instructions for GitHub-hosted deps
They have fallen out of date since we switched from Jenkins-
run upgrades to GitHub Actions -run upgrades.
2022-10-20 13:15:46 -04:00
Kristin Aoki
c20aa28c2f fix: video captions skip to end and skip to start 2022-10-20 11:58:17 -04: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
Feanil Patel
2ee7aa4657 build!: Revert to default issue templates.
Rather than having an override for this repo, revert to the default
issue templates defined in the `.github` repo for the Open edX Project.

BREAKING CHANGE: This will allow anyone to create blank issues which was
previously only possible via a work-around.
2022-10-20 10:20:29 -04:00
Piotr Surowiec
39d9c2f748 Merge pull request #31159 from open-craft/maxim/clean-up-htmlsnippets
[BD-13] refactor: Clean up HTMLSnippet
2022-10-20 16:01:14 +02:00
Jenkins
8d7f7f51b7 chore: geoip2: update maxmind geolite country database 2022-10-19 16:53:24 -04:00
Jenkins
02e739d3df chore(i18n): update translations 2022-10-19 12:50:43 -04:00
Rebecca Graber
cc0a07d437 chore: update edx-i18n-tools (#31174)
Update edx-i18n-tools to bring in a fix for the transifex pull command.
2022-10-19 12:15:01 -04:00
Nathan Sprenkle
53b9f4a3a1 feat: learner home social share settings (#31147)
* feat: add social share settings

* docs: add social share settings to mock

* feat: add social brand

* test: added tests for social share settings

Co-authored-by: jansenk <jkantor@edx.org>
2022-10-19 10:11:38 -04:00
Michael Roytman
d5ca1448fe Merge pull request #31166 from openedx/mroytman/bump-xblock-lti-consumer-5.0.1
fix: upgrade lti-consumer-xblock library to install LTI 1.3 launch fixes
2022-10-19 08:50:18 -04:00
Kshitij Sobti
acbd424270 docs: Document the discussions app (#31045)
This change documents some of the workings of the discussions app for reference.
2022-10-19 17:15:07 +05:00
Matt Hughes
6c89cf80dd chore: increment edx-enterprise version (#31167) 2022-10-18 17:17:46 -04:00
michaelroytman
193bdaf048 fix: upgrade lti-consumer-xblock library to install LTI 1.3 launch fixes
This commit upgrades the version of the lti-consumer-xblock library from version 5.0.0 to version 5.0.1. This new version contains two fixes to the LTI 1.3 launch Flow. These fixes should enable LTI 1.3 launches, which are currently broken.

Please see the CHANGELOG entry for this version for a full description of the fixes: https://github.com/openedx/xblock-lti-consumer/blob/master/CHANGELOG.rst#501---2022-10-17. The commit messages are included below for convenience.

fix: X-Frame-Options DENY response header prevents LTI 1.3 launch
This commit fixes a bug caused by the X-Frame-Options response header. The X-Frame-Options response header indicates to the browser whether a site's content can be loaded within certain tags, including the <iframe> tag. This is a form of clickjacking protection.

In Django, this response header is set by the django.middleware.clickjacking.XFrameOptionsMiddleware middleware. In the edx-platform, by default, X-Frame-Options is set to DENY (see the X_FRAME_OPTIONS Django setting), which means that the response content returned by Django views cannot be loaded within certain tags. However, this behavior can be disabled by decorating views with the django.views.decorators.clickjacking.xframe_options_exempt view decorator.

This creates a problem for LTI 1.3 launches in the edx-platform. When an LTI component is loaded, the LtiConsumerXBlock is loaded via the lms.djangoapps.courseware.views.views.render_xblock_view view. This view is called in an <iframe> tag, but the view is decorated by the xfame_options_exempt decorator, which disables clickjacking protection and communicates to the browser that the content can be loaded in the <iframe> tag.

Once the third-party login request of the LTI 1.3 launch is completed, the LTI tool directs the browser to make a request to the launch_gate_endpoint. This endpoint returns a response, which is an auto-submitting form that makes a POST request - the LTI launch request - to the tool. This view has clickjacking enabled, so the browser blocks the requests, which prevents the launch from occurring.

This commit adds the xframe_options_exempt view decorator to the launch_gate_endpoint view.

Note that LTI 1.1 does not have this bug, because the LTI launch request is handled via the lti_launch_handler. The XBlock runtime handles requests to the LTI handlers via the openedx.core.djangoapps.xblock.rest_api.views.xblock_handler view, which is also decorated by the xframe_options_exempt view decorator.

fix: LTI 1.3 launch URL should be redirect_uri provided by Tool in authentication request
This commit fixes a bug in the way we determine where to send the authentication response - the LTI 1.3 launch message - as part of an LTI 1.3 launch.

According to the 1EdTech Security Framework 1.0, during an LTI 1.3 launch, "the authentication response is sent to the redirect_uri." The redirect_uri is a query or form parameter provided by the tool when it directs the browser to make a request to the Platform's authentication endpoint. However, we currently send the authentication response to the preregistered launch URL - lti_1p3_launch_url in the LtiConsumerXBlock or the LtiConfiguration model. The difference is subtle, but it is important, because the specification indicates the Platform should respect the redirect_uri provided by the Tool, assuming it is a valid redirect_uri.

During the pregistration phase, "the Tool must provide one or multiple redirect URIs that are valid end points where the authorization response can be sent. The number of distinct redirect URIs to be supported by a platform is not specified." Currently, we do not support multiple redirect URIs, so the change is not immediately impactful. However, we should follow the specification and ensure that we return the authentication response to the correct URL.
2022-10-18 16:30:59 -04:00
Matt Hughes
b8fee69340 fix: remove noisy log 2022-10-18 15:28:50 -04:00
Edward Zarecor
b6fb69f432 fix: Remove deprecated "rate" XBlock from requirements (#31158)
RateXBlock has been deprecated and moved to openedx-unsupported.

Co-authored-by: Edward Zarecor <ed@tcril.org>
2022-10-18 16:35:48 +00:00
Maxim Beder
0919fc7dab refactor: add js_module_name attribute to MakoTemplateBlockBase
In the previous commit `js_module_name = None` was removed from
HTMLSnippet class, because it's not being used by this class, or the
classes that inherit from it. But `js_module_name` is used in
MakoTemplateBlockBase.

Not all classes that inherit from MakoTemplateBlockBase define this
attribute, since the same classes inherit from HTMLSnippet class, which
used to provide a fallback for this attribute. To prevent
`AttributeError`, defining the default value of `None` in
MakoTemplateBlockBase.
2022-10-17 19:25:50 +02:00
Moeez Zahid
4271e24eb9 feat: Waffle switch to disable JWT for mobile (#31096)
* feat: Waffle switch to disable JWT for mobile
2022-10-17 16:57:11 +05:00
Usama Sadiq
b0774c6d97 fix: remove edx-val pin (#31157)
* fix: remove edx-val pin

Co-authored-by: edX requirements bot <49161187+edx-requirements-bot@users.noreply.github.com>
2022-10-17 15:07:25 +05:00
Maxim Beder
e0330cf418 refactor: clean up HTMLSnippet
Remove code that is no longer needed after conversion of all the
XModules to standard XBlocks.
2022-10-15 14:27:58 +02:00
Usama Sadiq
7296c06b49 Update docutils & Sphinx constraints (#31152)
* fix: remove sphinx and docutils constraint
* fix: pin docutils<0.19 version

Co-authored-by: edX requirements bot <devops+edx-requirements-bot@edx.org>
2022-10-14 11:44:18 +05:00
SaadYousaf
c79c41e0a3 fix: filter out discussion topics that have not started yet for instructor paced courses 2022-10-13 23:15:46 +05:00
Michael Roytman
2ae11706d0 Merge pull request #31155 from openedx/mroytman/bump-xblock-lti-consumer-5.0.0
feat: decouple LtiConsumerXBlock.location from LTI 1.3 views
2022-10-13 13:40:58 -04:00
michaelroytman
6a8cdeeb43 feat: decouple LtiConsumerXBlock.location from LTI 1.3 views
This commit upgrades the version of the lti-consumer-xblock library from version 4.5.0 to version 5.0.0. This new version contains breaking changes to the public Python API published by the library, but it mainly contains code refactors that decouple the LtiConsumerXBlock.location field from the basic LTI 1.3 launches.

LTI 1.3 launches should continue to work unaltered.

The only course staff or instructor facing changes are described below. The access token and keyset URLs displayed in Studio have changed in format.

The old format was:

Access Token URL: https://courses.edx.org/api/lti_consumer/v1/token/block-v1:edX+999+2022Q3+type@lti_consumer+block@714c10a5e4df452da9d058788acb56be
Keyset URL: https://courses.edx.org/api/lti_consumer/v1/public_keysets/block-v1:edX+999+2022Q3+type@lti_consumer+block@714c10a5e4df452da9d058788acb56be

The new format is:

Access Token URL: https://courses.edx.org/api/lti_consumer/v1/token/c3f6af60-dbf2-4f85-8974-4ff870068d43
Keyset URL: https://courses.edx.org/api/lti_consumer/v1/public_keysets/c3f6af60-dbf2-4f85-8974-4ff870068d43

The difference is in the slug at the end of the URL. In the old format, the slug was the UsageKey of the XBlock associated with the LTI integration. In the new format, the slug is the config_id of the LtiConfiguration associated with the LTI integration. This is an iterative step toward decoupling the access_token_endpoint and the public_keyset_endpoint views from the XBlock location field. The XBlock location field appears as the usage_key parameter to both views. We cannot simply remove the usage_key parameter from the views, because existing LTI 1.3 integrations may have been created using the old format, and we need to maintain backwards compatibility. This change, however, prevents new integrations from being created that are coupled to the XBlock. In the future, we may address integrations that use the old format to fully decouple the XBlock from the views.
2022-10-13 12:42:29 -04:00
Kyle McCormick
66dc16c626 chore: upgrades blockstore to 1.2.4 (#31121)
and runs `make upgrade`

Blockstore changeset: https://github.com/openedx/blockstore/compare/1.2.1...openedx:blockstore:1.2.4

Co-authored-by: Jillian Vogel <jill@opencraft.com>
2022-10-13 08:45:07 -04:00
Ahtisham Shahid
c2696c07fc fix: updated topic sorting for discussions MFE (#31124)
* fix: updated topic sorting for discussions MFE

* feat: updated topic sorting test case
2022-10-13 15:09:19 +05:00