Skip to content

Publish frontend-app-instructor-dashboard 1.0.0 #218

Description

@arbrandes

Description

Publish the first stable release of @openedx/frontend-app-instructor-dashboard (1.0.0) by adopting the release-branch model from ADR 0012 (amended in openedx/frontend-base#274). Part of openedx/frontend-base#244.

This repo develops on a single main branch (no separate rewrite branch) and publishes 1.0.0-alpha.* to @latest (currently 1.0.0-alpha.47) using the placeholder trick - the same starting point frontend-base had.

Target model: stable is published from a long-lived release branch (npm @latest); main publishes -alpha prereleases to @alpha. The .releaserc is identical on both branches, and release.yml triggers on both:

"branches": [
  { "name": "release", "channel": "latest" },
  { "name": "main", "prerelease": "alpha", "channel": "alpha" }
]

Plan

  • Bump the @openedx/frontend-base dependency to ^1.0.0 (the released stable) on main.
  • Update .releaserc to the target config (replace placeholder with the release entry; add channel: alpha to the main entry) and point release.yml at [main, release].
  • Cut release from main (no-op: main's workflow does not trigger on release until the config lands).
  • Land the config on main.
  • Fast-forward release up to main to publish 1.0.0 to @latest.
  • Create the v1.0.0 GitHub Release by hand, with curated first-release notes (see Notes).
  • Add branch protection to release; delete the obsolete placeholder branch.
  • Verify: @latest = 1.0.0, tag v1.0.0, GitHub Release present, @alpha tracking main.

Notes

Use a release branch, not an n.x branch. semantic-release classifies n.x names as maintenance branches, which can only patch a major that already shipped, never originate one.

Set channel: alpha explicitly. Without it, semantic-release defaults a prerelease branch's dist-tag to the branch name, so prereleases would land on @main instead of @alpha.

The first stable release's changelog spans the whole history and exceeds GitHub's release-body limit, so the GitHub Release step 422s. The npm publish itself still succeeds, so create the GitHub Release manually afterward.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Fields

No fields configured for Task.

Projects

Status
Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions