3.3 KiB
✅ XC_VM Release Preparation Checklist
This document describes the process of creating an XC_VM release — a step-by-step guide for developers on updating the version, building archives, and publishing on GitHub.
📚 Navigation
🔢 1. Update Version
- Set the new
XC_VM_VERSIONvalue in the following files:
Files to edit:
src/www/constants.php
src/www/stream/init.php
src/player/functions.php
Auto-update command:
find -type f -name "*.php" -exec sed -i \
"s/define('XC_VM_VERSION', '[0-9]\+\.[0-9]\+\.[0-9]\+');/define('XC_VM_VERSION', 'X.Y.Z');/g" {} \;
Commit the changes with a message:
git add .
git commit -m "Bump version to X.Y.Z"
💡 Tip: Replace
X.Y.Zwith the actual version, e.g.,1.2.3.
🧹 2. Deleted Files
- Generate a list of deleted files:
make delete_files_list
- Open the file
dist/deleted_files.txt. - For each path in the list, add the following block after the comment
// Update checkpointinsrc/includes/cli/update.php:
if (file_exists(MAIN_HOME . 'file_path')) {
unlink(MAIN_HOME . 'file_path');
}
⚠️ Important: Ensure paths are correct to avoid deleting critical files.
⚙️ 3. Build Archives
- Run the following commands sequentially:
make lb
make main
make main_update
make lb_update
-
Make sure the following files are created in
dist/:loadbalancer.tar.gz— LB installation archiveloadbalancer_update.tar.gz— LB update archiveXC_VM.zip— MAIN installation archiveupdate.tar.gz— MAIN update archivehashes.md5— file with checksums
🧰 Check: After building, verify archive integrity with
md5sum -c hashes.md5.
📝 4. Changelog
Generate the changelog from git first:
git log --pretty=format:"- %s (%h)" X.Y.Z..main > dist/changes.md
- Then add current release changes using this JSON:
https://github.com/Vateron-Media/XC_VM_Update/blob/main/changelog.json
- Add current release changes in JSON format:
[
{
"version": "X.Y.Z",
"changes": [
"Description of change 1",
"Description of change 2"
]
}
]
💬 Recommendation: Keep descriptions concise and informative, focusing on key improvements and fixes.
🚀 5. GitHub Release
-
Create a new release on GitHub Releases.
-
Attach the following files:
dist/loadbalancer.tar.gzdist/XC_VM.zipdist/update.tar.gzdist/loadbalancer_update.tar.gzdist/hashes.md5
-
Include the changelog in the release description.
✅ Completion: After publishing, verify that all files are downloadable and checksums match.