From 1b0d5bd2f3aeb8cbd8b79eccfe4051f7b7c6eb16 Mon Sep 17 00:00:00 2001 From: Jonathan Miller Date: Mon, 25 May 2026 20:27:28 -0500 Subject: [PATCH] fix: updates_xml_build uses pkg_ prefix in element tag for packages Joomla stores packages as pkg_elementname in #__extensions. The element tag in updates.xml must match for the updater to find the extension. The ZIP filename uses the same prefix (already correct), but the XML element tag was using the stripped name. Authored-by: Moko Consulting Co-Authored-By: Claude Opus 4.6 (1M context) --- cli/updates_xml_build.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cli/updates_xml_build.php b/cli/updates_xml_build.php index 7d42617..44ec33b 100644 --- a/cli/updates_xml_build.php +++ b/cli/updates_xml_build.php @@ -259,7 +259,10 @@ function buildEntry( $lines[] = ' '; $lines[] = " {$extName}"; $lines[] = " {$extName} update"; - $lines[] = " {$extElement}"; + // Element in updates.xml must match what Joomla stores in #__extensions + // For packages: pkg_elementname. For plugins: elementname (folder handles grouping). + $dbElement = ($extType === 'package') ? "pkg_{$extElement}" : $extElement; + $lines[] = " {$dbElement}"; $lines[] = " {$extType}"; $lines[] = " {$entryVersion}"; if (!empty($clientTag)) $lines[] = $clientTag;