feat(cli): add changelogurl support to updates_xml_build
Generic: Repo Health / Access control (push) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Universal: PR Check / Branch Policy (pull_request) Has been cancelled
Generic: Repo Health / Site Health (pull_request) Has been cancelled
Generic: Repo Health / Access control (pull_request) Has been cancelled
Universal: PR Check / Validate PR (pull_request) Has been cancelled
Universal: Secret Scanning / Gitleaks Secret Scan (pull_request) Has been cancelled
Platform: moko-platform CI / Gate 1: Code Quality (push) Has been cancelled
Universal: Build & Release / Promote Pre-Release to RC (pull_request) Has been cancelled
Branch Cleanup / Delete merged branch (pull_request) Has been cancelled
Universal: Build & Release / Build & Release Pipeline (pull_request) Has been cancelled
Platform: moko-platform CI / Gate 1: Code Quality (pull_request) Has been cancelled
Platform: moko-platform CI / Gate 2: Unit Tests (8.1) (push) Has been cancelled
Platform: moko-platform CI / Gate 2: Unit Tests (8.2) (push) Has been cancelled
Platform: moko-platform CI / Gate 2: Unit Tests (8.3) (push) Has been cancelled
Platform: moko-platform CI / Gate 3: Self-Health Check (push) Has been cancelled
Platform: moko-platform CI / Gate 4: Governance (push) Has been cancelled
Platform: moko-platform CI / Gate 5: Template Integrity (push) Has been cancelled
Platform: moko-platform CI / CI Summary (push) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Platform: moko-platform CI / Gate 2: Unit Tests (8.1) (pull_request) Has been cancelled
Platform: moko-platform CI / Gate 2: Unit Tests (8.2) (pull_request) Has been cancelled
Platform: moko-platform CI / Gate 2: Unit Tests (8.3) (pull_request) Has been cancelled
Platform: moko-platform CI / Gate 3: Self-Health Check (pull_request) Has been cancelled
Platform: moko-platform CI / Gate 4: Governance (pull_request) Has been cancelled
Platform: moko-platform CI / Gate 5: Template Integrity (pull_request) Has been cancelled
Platform: moko-platform CI / CI Summary (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Generic: Repo Health / Release configuration (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled

- Add <changelogurl> tag to all update entries (Joomla best practice)
- Points to CHANGELOG.md on main branch
- Add comment clarifying version cascading behaviour

Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Jonathan Miller
2026-05-29 05:50:59 -05:00
parent 4a098e6c15
commit 56deb8b923
+14 -3
View File
@@ -367,7 +367,8 @@ function buildEntry(
string $infoUrl,
string $targetPlatform,
string $phpTag,
string $shaTag
string $shaTag,
string $changelogUrl = ''
): string {
$lines = [];
$lines[] = ' <update>';
@@ -399,6 +400,9 @@ function buildEntry(
$lines[] = $shaTag;
}
$lines[] = " <tags><tag>{$tagName}</tag></tags>";
if (!empty($changelogUrl)) {
$lines[] = " <changelogurl>{$changelogUrl}</changelogurl>";
}
$lines[] = ' <maintainer>Moko Consulting</maintainer>';
$lines[] = ' <maintainerurl>https://mokoconsulting.tech</maintainerurl>';
$lines[] = " {$targetPlatform}";
@@ -443,9 +447,15 @@ for ($i = 0; $i <= $stabilityIndex; $i++) {
$joomlaTag = $stabilityTagMap[$channelName] ?? $channelName;
$stabilityLabel = $stabilityLabelMap[$channelName] ?? $channelName;
// All cascaded entries use the SAME version as the highest-stability package.
// The version MUST match what's inside the ZIP (Joomla reads it post-install).
// The <tag> differentiates channels; the version is always the release version.
// Changelog URL: points to the CHANGELOG.md on main branch
$changelogUrl = "{$giteaUrl}/{$org}/{$repo}/raw/branch/main/CHANGELOG.md";
$entries[] = buildEntry(
$joomlaTag,
$channelVersion,
$entryVersion,
$channelDownloadUrl,
$displayName,
$stabilityLabel,
@@ -456,7 +466,8 @@ for ($i = 0; $i <= $stabilityIndex; $i++) {
$channelInfoUrl,
$targetPlatform,
$phpTag,
$shaTag
$shaTag,
$changelogUrl
);
}