Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release and Changelog workflow #1075

Closed
adamziel opened this issue Feb 29, 2024 · 4 comments
Closed

Release and Changelog workflow #1075

adamziel opened this issue Feb 29, 2024 · 4 comments
Labels
Milestone

Comments

@adamziel
Copy link
Collaborator

Related to #768, let's provide clear communication about the changes in new versions of Playground. Changelogs and releases could be two useful tools for that.

Two super rough notes:

  • Maybe just a Changelog file? Or Gutenberg-like release script? Feed that into an automated changelog or do manual changelogs?
  • Woo – either manual changelog to match the branch name, OR section in the PR description that would automatically convert into a changelog entry. Then say “Fix”, “major”, “minor”, etc.
@adamziel
Copy link
Collaborator Author

adamziel commented Mar 1, 2024

  • Playground already has tagged npm package releases – Lerna automates that workflow
  • GitHub can autogenerate release notes based on a tag, and will even auto-append PR titles if you select another tag and click "Generate release notes" again

CleanShot 2024-03-01 at 11 28 48@2x

@adamziel
Copy link
Collaborator Author

adamziel commented Mar 1, 2024

Gutenberg has a script to automatically organize changelog entries into feature groups:

https://github.com/WordPress/gutenberg/blob/44b5cd5eb5974fdb5b9ad6e3212ac86d2f81e825/bin/plugin/commands/changelog.js#L741

@adamziel
Copy link
Collaborator Author

adamziel commented Mar 7, 2024

Open question: How to reconcile releases and changelogs with continuous deployments of playground.wordpress.net? Perhaps only do changelogs for npm packages?

adamziel added a commit that referenced this issue Apr 24, 2024
Refreshes the Changelog after each npm package release.

This PR adds a new `npm changelog` script that runs in CI after npm
packages are released. It is an adapted version of Gutenberg's
[changelog.js](https://github.com/WordPress/gutenberg/blob/2dff99b899834c925d9e9fe43f6c546082fcb8c0/bin/plugin/commands/changelog.js).
It:

* Composes a changelog section for the specified version tag based on
merged GitHub PRs.
* Blends that section into the existing CHANGELOG.md file, either
replacing one of the sections or prepending a new one.
* Gives props to contributors 🙌 

This PR also ships a CHANGELOG.md file generated using the script.

## Testing instructions

1. Install Bun
2. Run `npm run changelog` and confirm the CHANGELOG.md file gets
updated with unreleased changes.

Related #1075
@adamziel
Copy link
Collaborator Author

We now have an automated CHANGELOG.md. It's updated on every npm packages release, but we can also update it with unreleased changes using a GitHub action.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Archived in project
Development

No branches or pull requests

1 participant