This guide outlines the process for creating and publishing a release of the plugin. Follow these steps to ensure a smooth, consistent release process.
Merge and Finalize Changes:
Ensure all changes intended for the release are merged into a dedicated release branch. Update the version number in both your main plugin PHP header and in the readme.txt
file according to Semantic Versioning (MAJOR.MINOR.PATCH). Document the changes, bug fixes, or new features in your release notes.
Release Branch Process:
release/v1.0.0
).Create an Annotated Tag: After the release branch is merged into main, create an annotated tag for your release:
git tag -a v1.0.0 -m "Release v1.0.0: [brief summary of changes]"
Push the Tag to GitHub:
git push origin v1.0.0
When you push a new tag, the GitHub Actions workflow automatically triggers:
Build Process:
The workflow checks out your repository, installs dependencies, and runs your build command (e.g., Webpack) to compile your assets. It then runs your existing yarn zip
command to generate a ZIP file (e.g., altly.zip
) that includes all production-ready files (PHP files, the build/
folder, readme.txt
, etc.), excluding development-only files.
Release Creation:
The workflow uses actions such as actions/create-release
and actions/upload-release-asset
to create a new GitHub release based on your tag and uploads the ZIP file as an asset.
Initial Release Creation:
When the GitHub Actions workflow creates the release, it will use a general description based on your tag message.
Detailed Release Notes:
After the release is published, edit the release notes on GitHub to include detailed information about:
This ensures that users and developers have a clear understanding of what’s included in the release.