Skip to content

[DEPR]: Learning Header Actions Slot V1 #681

Open

Description

@ChrisChV

RFC Start Date

2026-08-31

Target Plan Accepted Date

2026-09-14

Target Transition Unblocked Date

2026-09-23

Earliest Breaking Changes Unblocked Date

2026-10-23

Earliest Open edX Named Release with Breaking Changes

Willow - 2027-01

Rationale

The org.openedx.frontend.layout.learning_header_actions.v1 plugin slot is gated behind both showUserDropdown and authenticatedUser, tying it to the visibility of the user dropdown menu. This is unintended: showUserDropdown should only control the AuthenticatedUserDropdown, not the header's action items (notifications tray, help link, and any plugin content injected into this slot). This prevents consumers who set showUserDropdown={false} from still showing notifications/help, and prevents third-party plugins attached to this slot from rendering independently of that flag. See #676

Removal

  • Remove the org.openedx.frontend.layout.learning_header_actions.v1 slot, defined in LearningHeaderActionsSlot/v1/index.jsx, which currently wraps HeaderNotificationsSlot and LearningHelpSlot and is only rendered by v2 when showUserDropdown is true.
  • Delete the v1/ directory entirely. The shared images/ folder stays, since its screenshots remain valid for v2.
  • The root index.jsx will drop the LearningHeaderActionsSlotV1 named export.

Replacement

Replaced by the org.openedx.frontend.layout.learning_header_actions.v2 slot, defined in LearningHeaderActionsSlot/v2/index.jsx. Once v1 is removed, v2 will render HeaderNotificationsSlot and LearningHelpSlot directly, no longer gated by showUserDropdown.

Deprecation

Mark org.openedx.frontend.layout.learning_header_actions.v1 as deprecated in v1/README.md and in the plugin slots index, pointing consumers to .v2.

Open question: Is there no native way to deprecate a plugin slot?

Additional Info

No response

Transition Unblocked Tasks

  • Merge the PR introducing the v2 slot: feat: Add V2 of header actions slot #682
  • Mark v1 as deprecated in v1/README.md and plugin-slots/README.md
  • Announce the migration path on Discourse/Slack so operators and plugin authors update their pluginSlots config from .v1 to .v2

Feature Removal Tasks

  • Remove the v1/ directory (index.jsx, README.md)
  • Update v2/index.jsx to render HeaderNotificationsSlot and LearningHelpSlot directly.
  • Remove the LearningHeaderActionsSlotV1 named export from the root index.jsx
  • Update the root README.md and HeaderNotificationsSlot/README.md to remove references to .v1
  • Publish a release and changelog entry noting the removal

Activity

  1. self-assigned this
    on Aug 23, 2026
  2. added
    deprProposal for deprecation & removal per OEP-21
    on Aug 23, 2026
  3. added theissue type on Aug 23, 2026
  4. tecoholic commented on Sep 16, 2026

    @tecoholic
    Contributor

    @ChrisChV Him, it's now past the accept date. Can we consider this DEPR as accepted?

  5. ChrisChV commented on Sep 16, 2026

    @ChrisChV
    ContributorAuthor

    @tecoholic Thanks for the heads-up! Yes, it has now been accepted.

  6. moved this from RFC to Plan Accepted in DEPR: Deprecation & Removalon Sep 16, 2026
  7. moved this from Plan Accepted to Transition Unblocked in DEPR: Deprecation & Removalon Sep 21, 2026
  8. moved this from Transition Unblocked to Breaking Changes Unblocked in DEPR: Deprecation & Removalon Oct 1, 2026
  9. moved this from Breaking Changes Unblocked to Transition Unblocked in DEPR: Deprecation & Removalon Oct 2, 2026
  10. moved this from Transition Unblocked to Breaking Changes Unblocked in DEPR: Deprecation & Removalon Oct 29, 2026
  11. kdmccormick commented on Oct 29, 2026

    @kdmccormick
    Member

    Breaking changes are now unblocked - removal can now move forward.

    @ChrisChV do you have a sense of when you will do the removal?

  12. ChrisChV commented on Oct 29, 2026

    @ChrisChV
    ContributorAuthor

    @kdmccormick Thanks for the heads-up!

    do you have a sense of when you will do the removal?

    I’ll probably do it tomorrow or early next week.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

deprProposal for deprecation & removal per OEP-21

Type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions