bug: package extension types not linking to installed extension in Joomla update system #482
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
When MokoGitea generates
updates.xmlfor package extension types (<type>package</type>), Joomla's update finder fails to link the#__updatesrecord to the installed extension. Theextension_idin#__updatesis set to0instead of the correct extension ID.This causes the update to not appear in Joomla's System > Update > Extensions view because Joomla treats
extension_id=0as a new installable extension rather than an update to an existing one.Root Cause Investigation
Joomla matches
#__updatesrecords to#__extensionsusingelement+type+client_id. For packages:#__extensionsstores packages withclient_id=0updates.xmlmay be missing the<client>tag or setting it incorrectly<client>, Joomla defaults toclient_id=1(admin) which doesn't matchclient_id=0in extensionsExpected Behavior
For
<type>package</type>entries inupdates.xml:<client>entirely (Joomla should match by element+type alone)<client>0</client>explicitly to match the package'sclient_id=0in#__extensionsAffected Extensions
pkg_mokowaas(Package - MokoWaaS) confirmed affectedWorkaround
MokoWaaS added
fixUpdateRecords()to its install script that self-heals by running:Steps to Reproduce
#__updateswithextension_id=0Priority
High - Blocks all package-type extensions from receiving updates through the Joomla update system.
Fixed in PR #488. Package types now output
<client>0</client>matchingclient_id=0in#__extensions. Joomla can now match updates to installed package extensions.Verified: MokoWaaS and MokoJoomBackup both show
<client>0</client>in updates.xml.@jmiller