5.3 KiB
Release Process for AI Assistants
This document provides step-by-step instructions for AI assistants to help with the release process for the Fix Plugin Does Not Exist Notices plugin.
Pre-Release Checklist
- All features for this release are complete
- All bug fixes for this release are complete
- CHANGELOG.md is up to date
- readme.txt is up to date
- All tests pass
Determining the New Version Number
Based on the changes made, determine the appropriate version increment:
- PATCH (e.g., 1.6.0 → 1.6.1): For bug fixes and minor improvements
- IMPORTANT: Always increment the patch version for every change, even small ones, to make rollbacks easier if issues are found in testing
- MINOR (e.g., 1.6.0 → 1.7.0): For new features and significant improvements
- MAJOR (e.g., 1.6.0 → 2.0.0): For breaking changes
Release Steps
1. Create a New Branch
git checkout -b v{MAJOR}.{MINOR}.{PATCH}
Example:
git checkout -b v1.7.0
2. Update Version Numbers
Update the version number in the following files:
a. Main Plugin File (fix-plugin-does-not-exist-notices.php)
/**
* Plugin Name: Fix 'Plugin file does not exist.' Notices
* Plugin URI: https://wordpress.org/plugins/fix-plugin-does-not-exist-notices/
* Description: Adds missing plugins to the plugins list with a "Remove Reference" link so you can permanently clean up invalid plugin entries and remove error notices.
* Version: {MAJOR}.{MINOR}.{PATCH}
* ...
*/
Also update the FPDEN_VERSION constant:
define( 'FPDEN_VERSION', '{MAJOR}.{MINOR}.{PATCH}' );
b. CHANGELOG.md
Add a new section at the top of the CHANGELOG.md file:
## [{MAJOR}.{MINOR}.{PATCH}] - YYYY-MM-DD
### Added
- New feature 1
- New feature 2
### Changed
- Change 1
- Change 2
### Fixed
- Bug fix 1
- Bug fix 2
c. POT File (languages/fix-plugin-does-not-exist-notices.pot)
Update the Project-Id-Version and POT-Creation-Date:
"Project-Id-Version: Fix 'Plugin file does not exist.' Notices {MAJOR}.{MINOR}.{PATCH}\n"
"POT-Creation-Date: YYYY-MM-DDT00:00:00+00:00\n"
d. readme.txt
Update the stable tag:
Stable tag: {MAJOR}.{MINOR}.{PATCH}
Add a new entry to the changelog section:
= {MAJOR}.{MINOR}.{PATCH} =
* New feature 1
* New feature 2
* Change 1
* Change 2
* Fixed bug 1
* Fixed bug 2
Update the upgrade notice section:
= {MAJOR}.{MINOR}.{PATCH} =
Brief description of the most important changes in this release
3. Commit Changes
git add fix-plugin-does-not-exist-notices.php CHANGELOG.md readme.txt README.md languages/fix-plugin-does-not-exist-notices.pot
git commit -m "Prepare release v{MAJOR}.{MINOR}.{PATCH}"
4. Test Changes Locally
Test the changes thoroughly on the version branch to ensure everything works as expected:
- Test with the latest WordPress version
- Test with PHP 7.0+ (minimum supported version)
- Verify all features work as expected
- Check for any PHP warnings or notices
5. Merge to Main
When satisfied with testing, merge the version branch to main:
git checkout main
git merge v{MAJOR}.{MINOR}.{PATCH} --no-ff
The --no-ff
flag creates a merge commit even if a fast-forward merge is possible, which helps preserve the branch history.
6. Push Main to Remotes
git push github main
git push gitea main
7. Create and Push Tag
git tag -a v{MAJOR}.{MINOR}.{PATCH} -m "Release version {MAJOR}.{MINOR}.{PATCH}"
git push github refs/tags/v{MAJOR}.{MINOR}.{PATCH}
git push gitea refs/tags/v{MAJOR}.{MINOR}.{PATCH}
8. Monitor GitHub Actions
Open the GitHub Actions page to monitor the build and deployment process: https://github.com/wpallstars/fix-plugin-does-not-exist-notices/actions
9. Verify Release
- Check that the GitHub release was created successfully
- Verify that the plugin was deployed to WordPress.org
- Test the plugin from WordPress.org to ensure it works correctly
Testing Previous Versions
To test a previous version of the plugin:
# Checkout a specific tag for testing
git checkout v{MAJOR}.{MINOR}.{PATCH}
# Or create a test branch from a specific tag
git checkout v{MAJOR}.{MINOR}.{PATCH} -b test/some-feature
Rollback Procedure (If Needed)
If issues are discovered after release:
1. Create a Hotfix Branch
git checkout v{MAJOR}.{MINOR}.{PATCH}
git checkout -b hotfix/v{MAJOR}.{MINOR}.{PATCH+1}
2. Fix the Issues
Make the necessary changes to fix the issues.
3. Update Version Numbers
Increment the PATCH version and update all version numbers as described above.
4. Test the Hotfix
Test the hotfix thoroughly to ensure it resolves the issue without introducing new problems.
5. Commit Changes
git add .
git commit -m "Fix issues in v{MAJOR}.{MINOR}.{PATCH}"
6. Merge to Main
git checkout main
git merge hotfix/v{MAJOR}.{MINOR}.{PATCH+1} --no-ff
git push github main
git push gitea main
7. Create and Push Tag
git tag -a v{MAJOR}.{MINOR}.{PATCH+1} -m "Hotfix release version {MAJOR}.{MINOR}.{PATCH+1}"
git push github refs/tags/v{MAJOR}.{MINOR}.{PATCH+1}
git push gitea refs/tags/v{MAJOR}.{MINOR}.{PATCH+1}
8. Monitor and Verify
Follow steps 8 and 9 from the release process to monitor and verify the hotfix release.