From 4bcb81af2c03d7843f6679d60d2317b2bbef3ea2 Mon Sep 17 00:00:00 2001 From: Jillian Vogel Date: Tue, 30 Jul 2024 08:36:25 +0930 Subject: [PATCH 1/4] temp: use openedx-learning WIP branch to add support for get_last_publish for components --- requirements/constraints.txt | 3 ++- requirements/edx/base.txt | 2 +- requirements/edx/development.txt | 2 +- requirements/edx/doc.txt | 2 +- requirements/edx/testing.txt | 2 +- 5 files changed, 6 insertions(+), 5 deletions(-) diff --git a/requirements/constraints.txt b/requirements/constraints.txt index b32989514d5d..6c09dace9883 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -87,7 +87,8 @@ libsass==0.10.0 click==8.1.6 # pinning this version to avoid updates while the library is being developed -openedx-learning==0.10.0 +# FIXME: bump version when merged and tagged https://github.com/openedx/openedx-learning/pull/204 +git+https://github.com/openedx/openedx-learning.git@jill/get_last_publish_log_for_entity#egg=openedx_learning # Open AI version 1.0.0 dropped support for openai.ChatCompletion which is currently in use in enterprise. openai<=0.28.1 diff --git a/requirements/edx/base.txt b/requirements/edx/base.txt index a7d2d457cc22..1c0521d0fee6 100644 --- a/requirements/edx/base.txt +++ b/requirements/edx/base.txt @@ -763,7 +763,7 @@ openedx-filters==1.9.0 # -r requirements/edx/kernel.in # lti-consumer-xblock # ora2 -openedx-learning==0.10.0 +openedx-learning @ git+https://github.com/openedx/openedx-learning.git@jill/get_last_publish_log_for_entity # via # -c requirements/edx/../constraints.txt # -r requirements/edx/kernel.in diff --git a/requirements/edx/development.txt b/requirements/edx/development.txt index 397923ac1e3b..123283d4c2ac 100644 --- a/requirements/edx/development.txt +++ b/requirements/edx/development.txt @@ -1303,7 +1303,7 @@ openedx-filters==1.9.0 # -r requirements/edx/testing.txt # lti-consumer-xblock # ora2 -openedx-learning==0.10.0 +openedx-learning @ git+https://github.com/openedx/openedx-learning.git@jill/get_last_publish_log_for_entity # via # -c requirements/edx/../constraints.txt # -r requirements/edx/doc.txt diff --git a/requirements/edx/doc.txt b/requirements/edx/doc.txt index 182ff8eb8684..ee35577760ac 100644 --- a/requirements/edx/doc.txt +++ b/requirements/edx/doc.txt @@ -891,7 +891,7 @@ openedx-filters==1.9.0 # -r requirements/edx/base.txt # lti-consumer-xblock # ora2 -openedx-learning==0.10.0 +openedx-learning @ git+https://github.com/openedx/openedx-learning.git@jill/get_last_publish_log_for_entity # via # -c requirements/edx/../constraints.txt # -r requirements/edx/base.txt diff --git a/requirements/edx/testing.txt b/requirements/edx/testing.txt index bf5c2817d519..48ec3d1a6dc8 100644 --- a/requirements/edx/testing.txt +++ b/requirements/edx/testing.txt @@ -970,7 +970,7 @@ openedx-filters==1.9.0 # -r requirements/edx/base.txt # lti-consumer-xblock # ora2 -openedx-learning==0.10.0 +openedx-learning @ git+https://github.com/openedx/openedx-learning.git@jill/get_last_publish_log_for_entity # via # -c requirements/edx/../constraints.txt # -r requirements/edx/base.txt From 2dd0d10a3ebbdd948101b6be80f5c5fff9f63855 Mon Sep 17 00:00:00 2001 From: Jillian Vogel Date: Tue, 30 Jul 2024 08:37:14 +0930 Subject: [PATCH 2/4] fix: use get_last_publish for components --- openedx/core/djangoapps/content_libraries/api.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/openedx/core/djangoapps/content_libraries/api.py b/openedx/core/djangoapps/content_libraries/api.py index 888452c89028..f5ecffe7a689 100644 --- a/openedx/core/djangoapps/content_libraries/api.py +++ b/openedx/core/djangoapps/content_libraries/api.py @@ -206,7 +206,9 @@ def from_component(cls, library_key, component): """ Construct a LibraryXBlockMetadata from a Component object. """ - last_publish_log = authoring_api.get_last_publish(component.pk) + ref = ContentLibrary.objects.get_by_key(library_key) + learning_package = ref.learning_package + last_publish_log = authoring_api.get_last_publish(learning_package.id, key=component.publishable_entity.key) return cls( usage_key=LibraryUsageLocatorV2( From e38f35017874b801bb3213f49a0c083696625c46 Mon Sep 17 00:00:00 2001 From: Jillian Vogel Date: Wed, 31 Jul 2024 04:55:12 +0930 Subject: [PATCH 3/4] fix: use versioning.last_publish_log for components --- openedx/core/djangoapps/content_libraries/api.py | 4 +--- .../content_tagging/tests/test_objecttag_export_helpers.py | 2 +- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/openedx/core/djangoapps/content_libraries/api.py b/openedx/core/djangoapps/content_libraries/api.py index f5ecffe7a689..727f6c7648a0 100644 --- a/openedx/core/djangoapps/content_libraries/api.py +++ b/openedx/core/djangoapps/content_libraries/api.py @@ -206,9 +206,7 @@ def from_component(cls, library_key, component): """ Construct a LibraryXBlockMetadata from a Component object. """ - ref = ContentLibrary.objects.get_by_key(library_key) - learning_package = ref.learning_package - last_publish_log = authoring_api.get_last_publish(learning_package.id, key=component.publishable_entity.key) + last_publish_log = component.versioning.last_publish_log return cls( usage_key=LibraryUsageLocatorV2( diff --git a/openedx/core/djangoapps/content_tagging/tests/test_objecttag_export_helpers.py b/openedx/core/djangoapps/content_tagging/tests/test_objecttag_export_helpers.py index f84ad4e6df72..d3306844ac40 100644 --- a/openedx/core/djangoapps/content_tagging/tests/test_objecttag_export_helpers.py +++ b/openedx/core/djangoapps/content_tagging/tests/test_objecttag_export_helpers.py @@ -441,7 +441,7 @@ def test_build_library_object_tree(self) -> None: """ Test if we can export a library """ - with self.assertNumQueries(11): + with self.assertNumQueries(8): tagged_library = build_object_tree_with_objecttags(self.library.key, self.all_library_object_tags) assert tagged_library == self.expected_library_tagged_xblock From c0df8cb19e81d6260f68c89bbe626d5bdc208e12 Mon Sep 17 00:00:00 2001 From: Jillian Vogel Date: Thu, 1 Aug 2024 02:57:35 +0930 Subject: [PATCH 4/4] chore: bump openedx-learning to 0.10.1 --- requirements/constraints.txt | 3 +-- requirements/edx/base.txt | 2 +- requirements/edx/development.txt | 2 +- requirements/edx/doc.txt | 2 +- requirements/edx/testing.txt | 2 +- 5 files changed, 5 insertions(+), 6 deletions(-) diff --git a/requirements/constraints.txt b/requirements/constraints.txt index 61e2b367de6b..1e2953c7d760 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -87,8 +87,7 @@ libsass==0.10.0 click==8.1.6 # pinning this version to avoid updates while the library is being developed -# FIXME: bump version when merged and tagged https://github.com/openedx/openedx-learning/pull/204 -git+https://github.com/openedx/openedx-learning.git@jill/get_last_publish_log_for_entity#egg=openedx_learning +openedx-learning==0.10.1 # Open AI version 1.0.0 dropped support for openai.ChatCompletion which is currently in use in enterprise. openai<=0.28.1 diff --git a/requirements/edx/base.txt b/requirements/edx/base.txt index 83b4850d7813..b08d4ad2f59d 100644 --- a/requirements/edx/base.txt +++ b/requirements/edx/base.txt @@ -763,7 +763,7 @@ openedx-filters==1.9.0 # -r requirements/edx/kernel.in # lti-consumer-xblock # ora2 -openedx-learning @ git+https://github.com/openedx/openedx-learning.git@jill/get_last_publish_log_for_entity +openedx-learning==0.10.1 # via # -c requirements/edx/../constraints.txt # -r requirements/edx/kernel.in diff --git a/requirements/edx/development.txt b/requirements/edx/development.txt index 5f39d1cb7fda..f3fb5d9b630d 100644 --- a/requirements/edx/development.txt +++ b/requirements/edx/development.txt @@ -1303,7 +1303,7 @@ openedx-filters==1.9.0 # -r requirements/edx/testing.txt # lti-consumer-xblock # ora2 -openedx-learning @ git+https://github.com/openedx/openedx-learning.git@jill/get_last_publish_log_for_entity +openedx-learning==0.10.1 # via # -c requirements/edx/../constraints.txt # -r requirements/edx/doc.txt diff --git a/requirements/edx/doc.txt b/requirements/edx/doc.txt index fffa3624e88a..9dc1fbbde2f6 100644 --- a/requirements/edx/doc.txt +++ b/requirements/edx/doc.txt @@ -891,7 +891,7 @@ openedx-filters==1.9.0 # -r requirements/edx/base.txt # lti-consumer-xblock # ora2 -openedx-learning @ git+https://github.com/openedx/openedx-learning.git@jill/get_last_publish_log_for_entity +openedx-learning==0.10.1 # via # -c requirements/edx/../constraints.txt # -r requirements/edx/base.txt diff --git a/requirements/edx/testing.txt b/requirements/edx/testing.txt index d17b3f85c111..7a83f38f2c13 100644 --- a/requirements/edx/testing.txt +++ b/requirements/edx/testing.txt @@ -970,7 +970,7 @@ openedx-filters==1.9.0 # -r requirements/edx/base.txt # lti-consumer-xblock # ora2 -openedx-learning @ git+https://github.com/openedx/openedx-learning.git@jill/get_last_publish_log_for_entity +openedx-learning==0.10.1 # via # -c requirements/edx/../constraints.txt # -r requirements/edx/base.txt