diff --git a/README.rst b/README.rst index 99248138f03d156047921e27cbc8d417907e9655..b9cc9a9e0b6f177efc0519ce8efff151860a4ce3 100644 --- a/README.rst +++ b/README.rst @@ -367,6 +367,18 @@ Changelog Please See the [releases tab](https://github.com/edx/xblock-lti-consumer/releases) for the complete changelog. +3.4.1 - 2022-02-01 +------------------ + +* Fix the target_link_uri parameter on OIDC login preflight url parameter so it matches + claim message definition of the field. + See docs at https://www.imsglobal.org/spec/lti/v1p3#target-link-uri + +3.4.0 - 2022-01-31 +------------------ + +* Fix the version number by bumping it up to 3.4.0 + 3.3.0 - 2022-01-20 ------------------- diff --git a/lti_consumer/__init__.py b/lti_consumer/__init__.py index f6eca10fab4c1101b813da515032986a46283f85..6ea1ff099171ceb367cb84c9d815a1a7f97f0d44 100644 --- a/lti_consumer/__init__.py +++ b/lti_consumer/__init__.py @@ -4,4 +4,4 @@ Runtime will load the XBlock class from here. from .apps import LTIConsumerApp from .lti_xblock import LtiConsumerXBlock -__version__ = '3.4.0' +__version__ = '3.4.1' diff --git a/lti_consumer/api.py b/lti_consumer/api.py index ea552b81aecd5217c97f978368b05fcb821ae2bb..6abe172af8828c02458d5d6167b867e4d7dc5b08 100644 --- a/lti_consumer/api.py +++ b/lti_consumer/api.py @@ -93,7 +93,6 @@ def get_lti_1p3_launch_info(config_id=None, block=None): if lti_consumer.dl is not None: deep_linking_launch_url = lti_consumer.prepare_preflight_url( - callback_url=get_lms_lti_launch_link(), hint=lti_config.location, lti_hint="deep_linking_launch" ) @@ -140,7 +139,6 @@ def get_lti_1p3_launch_start_url(config_id=None, block=None, deep_link_launch=Fa # Prepare and return OIDC flow start url return lti_consumer.prepare_preflight_url( - callback_url=get_lms_lti_launch_link(), hint=hint, lti_hint=lti_hint ) diff --git a/lti_consumer/lti_1p3/README.md b/lti_consumer/lti_1p3/README.md index 808f3fcd16faf3ad5232fb95f4da387c956af947..06577f3db0b3f5775d61158d03810d5a61b8e95f 100644 --- a/lti_consumer/lti_1p3/README.md +++ b/lti_consumer/lti_1p3/README.md @@ -84,9 +84,7 @@ def lti_preflight_request(request): The platform needs to know the tool OIDC endpoint. """ lti_consumer = _get_lti1p3_consumer() - context = lti_consumer.prepare_preflight_url( - callback_url=get_lms_lti_launch_link() - ) + context = lti_consumer.prepare_preflight_url() # This template should render a simple redirection to the URL # provided by the context through the `oidc_url` key above. diff --git a/lti_consumer/lti_1p3/consumer.py b/lti_consumer/lti_1p3/consumer.py index 7efbe55082d217d29f718c57d6c488f09894f553..2946ed752543061286c602d1f9d590060a2d9b29 100644 --- a/lti_consumer/lti_1p3/consumer.py +++ b/lti_consumer/lti_1p3/consumer.py @@ -90,7 +90,6 @@ class LtiConsumer1p3: def prepare_preflight_url( self, - callback_url, hint="hint", lti_hint="lti_hint" ): @@ -102,7 +101,7 @@ class LtiConsumer1p3: "iss": self.iss, "client_id": self.client_id, "lti_deployment_id": self.deployment_id, - "target_link_uri": callback_url, + "target_link_uri": self.launch_url, "login_hint": hint, "lti_message_hint": lti_hint } diff --git a/lti_consumer/lti_1p3/tests/test_consumer.py b/lti_consumer/lti_1p3/tests/test_consumer.py index 557f16cf24d5619038825b098930e53c0b3df885..ac76e31acc06c1e4a1679608e90d96aef7f4812e 100644 --- a/lti_consumer/lti_1p3/tests/test_consumer.py +++ b/lti_consumer/lti_1p3/tests/test_consumer.py @@ -149,7 +149,6 @@ class TestLti1p3Consumer(TestCase): Check if preflight request is properly formed and has all required keys. """ preflight_request_data = self.lti_consumer.prepare_preflight_url( - callback_url=LAUNCH_URL, hint="test-hint", lti_hint="test-lti-hint" ) diff --git a/lti_consumer/plugin/compat.py b/lti_consumer/plugin/compat.py index 6c9ed1fc2f56f8c2452e994eaea808a91b56da1d..d64a5aeab8cfd479cc357c57ff7391a90dd323a9 100644 --- a/lti_consumer/plugin/compat.py +++ b/lti_consumer/plugin/compat.py @@ -60,7 +60,6 @@ def load_block_as_anonymous_user(location): student_data=None, course_id=location.course_key, track_function=None, - xqueue_callback_url_prefix="", request_token="", )