fix: derive Joomla element name with correct lowercase + type prefix #636

Closed
jmiller wants to merge 0 commits from fix into main
Owner

Summary

  • Lowercase and strip hyphens in AutoElementName() so element names match what Joomla stores in #__extensions.element (e.g. pkg_mokosuitebackup instead of pkg_MokoSuiteBackup)
  • Remove incorrect plg_ prefix for plugins — Joomla plugins have no element prefix; the folder column determines the plugin group

Problem

The Joomla update server was emitting <element>pkg_MokoSuiteBackup</element> but Joomla's updater matches by element + type + client_id, and the installed extension has pkg_mokosuitebackup in #__extensions. The case mismatch made updates invisible.

Test plan

  • Verify AutoElementName() returns pkg_mokosuitebackup for Name=MokoSuiteBackup, PackageType=package
  • Verify plugins return just lowername with no prefix
  • Verify explicit element_name override still takes precedence
  • Verify hyphened names like Moko-Suite produce pkg_mokosuite

Fixes #635

## Summary - **Lowercase and strip hyphens** in `AutoElementName()` so element names match what Joomla stores in `#__extensions.element` (e.g. `pkg_mokosuitebackup` instead of `pkg_MokoSuiteBackup`) - **Remove incorrect `plg_` prefix** for plugins — Joomla plugins have no element prefix; the `folder` column determines the plugin group ## Problem The Joomla update server was emitting `<element>pkg_MokoSuiteBackup</element>` but Joomla's updater matches by `element + type + client_id`, and the installed extension has `pkg_mokosuitebackup` in `#__extensions`. The case mismatch made updates invisible. ## Test plan - [ ] Verify `AutoElementName()` returns `pkg_mokosuitebackup` for Name=`MokoSuiteBackup`, PackageType=`package` - [ ] Verify plugins return just `lowername` with no prefix - [ ] Verify explicit `element_name` override still takes precedence - [ ] Verify hyphened names like `Moko-Suite` produce `pkg_mokosuite` Fixes #635
jmiller added 2 commits 2026-06-18 13:34:26 +00:00
fix: derive Joomla element name with correct lowercase + type prefix
Branch Policy Check / Verify merge target (pull_request) Successful in 2s
Universal: PR Check / Branch Policy (pull_request) Successful in 2s
Universal: PR Check / Validate PR (pull_request) Failing after 10s
Generic: Repo Health / Site Health (pull_request) Has been skipped
Generic: Repo Health / Access control (pull_request) Successful in 1s
Generic: Project CI / Lint & Validate (pull_request) Successful in 32s
Generic: Repo Health / Site Health (push) Has been skipped
Branch Cleanup / Delete merged branch (pull_request) Has been skipped
RC Revert / Rename rc/ back to dev/ (pull_request) Has been skipped
Generic: Repo Health / Access control (push) Successful in 2s
Universal: Secret Scanning / Gitleaks Secret Scan (pull_request) Successful in 41s
PR RC Release / Build RC Release (pull_request) Failing after 34s
Universal: Auto Version Bump / Version Bump (push) Successful in 4s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 1m46s
Universal: Build & Release / Promote to RC (pull_request) Has been skipped
Universal: Build & Release / Build & Release Pipeline (pull_request) Has been skipped
Generic: Project CI / Tests (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (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
Generic: Repo Health / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
73a1320d72
AutoElementName() was using the manifest Name field verbatim, producing
element names like "pkg_MokoSuiteBackup" instead of "pkg_mokosuitebackup".
Joomla's updater matches by element+type+client_id in #__extensions, so
the case mismatch made updates invisible.

Changes:
- Lowercase name and strip hyphens in AutoElementName()
- Remove incorrect "plg_" prefix for plugins (Joomla plugins have no
  element prefix; the folder column determines the plugin group)

Fixes #635
jmiller closed this pull request 2026-06-18 13:35:08 +00:00
jmiller deleted branch fix 2026-06-18 13:35:09 +00:00

Pull request closed

This pull request cannot be reopened because the branch was deleted.
Sign in to join this conversation.