joomla / joomla-cms

Home of the Joomla! Content Management System
https://www.joomla.org
GNU General Public License v2.0
4.74k stars 3.65k forks source link

Update server changelogurl not working properly #43505

Open robbiejackson opened 4 months ago

robbiejackson commented 4 months ago

Steps to reproduce the issue

Set up an extension server type update server as described in https://docs.joomla.org/Deploying_an_Update_Server. Include a changelogurl element which points to a changelog XML file.

Set up a changelog XML file as described in https://docs.joomla.org/Adding_changelog_to_your_manifest_file

In the admin back-end Update / Extensions click on Check For Updates.

The update should appear, and should have a blue Changelog button.

Click on the blue Changelog button.

Expected result

It should display the changelog entries from the changelog XML file on the update server.

Actual result

It shows the changelog title, but no content

System information (as much as possible)

Joomla 5.1

Additional comments

When the changelog button is pressed it triggers an http request to index.php?option=com_installer&task=manage.loadChangelogRaw&eid=258&source=update&format=raw

This runs in particular the loadChangelog function in com_installer ManageModel.

The code queries the database to find the changelogurl field in the extensions table. Because the wasn't set in the installer manifest XML file, this field is blank. So it doesn't display any change log.

I believe that the code should instead use the changelogurl field in the udpates table. This is correctly set from the update server.

Developers may have different changelog XML files for different versions of their extension. This may mean they'll have different changelogurl entries for installed extensions and updates. So for updates Joomla should use the changelogurl field in the updates table (ie for the extension update) rather than the one in the extensions table (the changelog for the currently installed version).

ClausKiss commented 1 week ago

Had the same issue. In my case the Austrian ö, ü etc. were the issue. Included them into <![CDATA[...]] and it worked


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/43505.