From cadeb0ec753c492b0605710e6174f17acc956e17 Mon Sep 17 00:00:00 2001 From: Feanil Patel Date: Tue, 20 Jan 2026 11:43:06 -0500 Subject: [PATCH] feat: migrate block transformer entry points to pyproject.toml Migrates 17 openedx.block_structure_transformer entry points from setup.py. Co-Authored-By: Claude Opus 4.5 --- pyproject.toml | 19 +++++++++++++++++++ setup.py | 19 ------------------- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 6f8a3d41f1..afe4432d36 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -133,3 +133,22 @@ plugins = "openedx.core.djangoapps.plugins.apps:PluginsConfig" theming = "openedx.core.djangoapps.theming.apps:ThemingConfig" user_authn = "openedx.core.djangoapps.user_authn.apps:UserAuthnConfig" zendesk_proxy = "openedx.core.djangoapps.zendesk_proxy.apps:ZendeskProxyConfig" + +[project.entry-points."openedx.block_structure_transformer"] +library_content = "lms.djangoapps.course_blocks.transformers.library_content:ContentLibraryTransformer" +library_content_randomize = "lms.djangoapps.course_blocks.transformers.library_content:ContentLibraryOrderTransformer" +split_test = "lms.djangoapps.course_blocks.transformers.split_test:SplitTestTransformer" +start_date = "lms.djangoapps.course_blocks.transformers.start_date:StartDateTransformer" +user_partitions = "lms.djangoapps.course_blocks.transformers.user_partitions:UserPartitionTransformer" +visibility = "lms.djangoapps.course_blocks.transformers.visibility:VisibilityTransformer" +hidden_content = "lms.djangoapps.course_blocks.transformers.hidden_content:HiddenContentTransformer" +course_blocks_api = "lms.djangoapps.course_api.blocks.transformers.blocks_api:BlocksAPITransformer" +milestones = "lms.djangoapps.course_api.blocks.transformers.milestones:MilestonesAndSpecialExamsTransformer" +grades = "lms.djangoapps.grades.transformer:GradesTransformer" +completion = "lms.djangoapps.course_api.blocks.transformers.block_completion:BlockCompletionTransformer" +load_override_data = "lms.djangoapps.course_blocks.transformers.load_override_data:OverrideDataTransformer" +content_type_gate = "openedx.features.content_type_gating.block_transformers:ContentTypeGateTransformer" +access_denied_message_filter = "lms.djangoapps.course_blocks.transformers.access_denied_filter:AccessDeniedMessageFilterTransformer" +open_assessment_transformer = "lms.djangoapps.courseware.transformers:OpenAssessmentDateTransformer" +effort_estimation = "openedx.features.effort_estimation.api:EffortEstimationTransformer" +discussions_link = "openedx.core.djangoapps.discussions.transformers:DiscussionsTopicLinkTransformer" diff --git a/setup.py b/setup.py index 7f6a800e24..b62d28ad14 100644 --- a/setup.py +++ b/setup.py @@ -14,25 +14,6 @@ setup( "team = lms.djangoapps.teams.team_partition_scheme:TeamPartitionScheme", "verification = openedx.core.djangoapps.user_api.partition_schemes:ReturnGroup1PartitionScheme", ], - "openedx.block_structure_transformer": [ - "library_content = lms.djangoapps.course_blocks.transformers.library_content:ContentLibraryTransformer", - "library_content_randomize = lms.djangoapps.course_blocks.transformers.library_content:ContentLibraryOrderTransformer", # lint-amnesty, pylint: disable=line-too-long - "split_test = lms.djangoapps.course_blocks.transformers.split_test:SplitTestTransformer", - "start_date = lms.djangoapps.course_blocks.transformers.start_date:StartDateTransformer", - "user_partitions = lms.djangoapps.course_blocks.transformers.user_partitions:UserPartitionTransformer", - "visibility = lms.djangoapps.course_blocks.transformers.visibility:VisibilityTransformer", - "hidden_content = lms.djangoapps.course_blocks.transformers.hidden_content:HiddenContentTransformer", - "course_blocks_api = lms.djangoapps.course_api.blocks.transformers.blocks_api:BlocksAPITransformer", - "milestones = lms.djangoapps.course_api.blocks.transformers.milestones:MilestonesAndSpecialExamsTransformer", # lint-amnesty, pylint: disable=line-too-long - "grades = lms.djangoapps.grades.transformer:GradesTransformer", - "completion = lms.djangoapps.course_api.blocks.transformers.block_completion:BlockCompletionTransformer", - "load_override_data = lms.djangoapps.course_blocks.transformers.load_override_data:OverrideDataTransformer", - "content_type_gate = openedx.features.content_type_gating.block_transformers:ContentTypeGateTransformer", - "access_denied_message_filter = lms.djangoapps.course_blocks.transformers.access_denied_filter:AccessDeniedMessageFilterTransformer", # lint-amnesty, pylint: disable=line-too-long - "open_assessment_transformer = lms.djangoapps.courseware.transformers:OpenAssessmentDateTransformer", - 'effort_estimation = openedx.features.effort_estimation.api:EffortEstimationTransformer', - 'discussions_link = openedx.core.djangoapps.discussions.transformers:DiscussionsTopicLinkTransformer', - ], "openedx.ace.policy": [ "bulk_email_optout = lms.djangoapps.bulk_email.policies:CourseEmailOptout", "course_push_notification_optout = openedx.core.djangoapps.notifications.policies:CoursePushNotificationOptout", # lint-amnesty, pylint: disable=line-too-long