Skip to content

Move NPM-published frontend-base repositories to the new branching strategy #563

Description

@arbrandes

Description

The frontend-base repositories that publish to NPM predate OEP-10 ADR 0002 and do not use the branch layout it settles on. Most publish the latest dist-tag from a branch named release, with the main branch on alpha. Two have not yet had their OEP-65 ADR 0004 takeover, so they publish from frontend-base and release/frontend-base while master still carries the micro-frontend. One publishes from main alone, with no unstable line at all. None of them have the n.x and n.m.x maintenance branches the ADR defines.

Bringing each repository onto the new strategy means renaming its stable branch to stable, rewriting its .releaserc branch list to the ADR's layout including the maintenance-branch patterns, pointing branch protection and the publish workflows at the new names, and updating the contributing documentation and default-branch setting to match. For the repositories still awaiting their ADR 0004 takeover, the rename is part of that takeover rather than separate from it.

The constraint throughout is that consumers must not break. NPM latest has to keep resolving to the same line across the change, previously published dist-tags have to keep working, and no version already published may be republished from a different branch.

Repositories

  • frontend-base (release + main)
  • frontend-base-compat (release + main)
  • frontend-app-instructor-dashboard (release + main)
  • frontend-app-notifications (release + main)
  • frontend-app-authn (release/frontend-base + frontend-base, awaiting its ADR 0004 takeover)
  • frontend-app-learner-dashboard (release/frontend-base + frontend-base, awaiting its ADR 0004 takeover)
  • frontend-app-catalog (frontend-base branch only, not publishing yet, so set it up this way from the start)
  • frontend-dev-utils (main only, no unstable line)

Part of #560. Proposal: openedx/openedx-proposals#815

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

Status
Todo

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions