J3.x:Joomla 3.10 points to 4.0 while it claims to be on the Default update server

From Joomla! Documentation

Other languages:
Deutsch • ‎English • ‎Nederlands • ‎Türkçe • ‎français

Joomla 3.10.0 and 4.0.0 was released recently. And to get there you have two Update Server settings. One is called "Default" and one "Joomla Next".

  • The "Default" Update Server should update your 3.x site to 3.10.0 but not to Joomla 4.0
  • The "Joomla Next" Update Server should update your 3.x site to 3.10.0 and after that to the next major which is at this time 4.0.0.

Errors reported: Updater from Joolma 3.10.0 points to 4.0 incorrectly

Sites that have been installed before 3.4.0 and have since then not saved the Joomla Update Options could point to Joomla 4 after updating to 3.10.0 while they claim to be on the "Default" Update Server.

Versions affected

General Information

This pertains only to Joomla! version(s): 3.10.0

What is the cause

With 3.4.0 we have changed the keys used in the database to configure the Update Server and a mapping to the new setting has been implemented. But when you did not touch the Update Server settings after that still, the old values are present in the Database but claim to be the "Default" update server.

How to fix

You can go to Components  Joomla Update  Options  Updateserver and set that setting to, for example, "Testing", save, and set it back to "Default", save again and clear the Update Cache (Extensions  Manage  Update  Clear Cache).

We are about to release a patch for com_joomlaupdate that should also handle that case by pointing all Settings claiming to be "Default" also to the "Default" Update Server. See responsible Github pull request

On affected sites you can already apply the changes from that pull request as shown here:

diff --git a/administrator/components/com_joomlaupdate/models/default.php b/administrator/components/com_joomlaupdate/models/default.php
index bb3964d0ff85..8823998c2b54 100644
--- a/administrator/components/com_joomlaupdate/models/default.php
+++ b/administrator/components/com_joomlaupdate/models/default.php
@@ -46,7 +46,6 @@ public function applyUpdateSite()
 		switch ($params->get('updatesource', 'nochange'))
 			// "Minor & Patch Release for Current version AND Next Major Release".
-			case 'sts':
 			case 'next':
 				$updateURL = 'https://update.joomla.org/core/sts/list_sts.xml';
@@ -74,6 +73,7 @@ public function applyUpdateSite()
 			 * The commented "case" below are for documenting where 'default' and legacy options falls
 			 * case 'default':
 			 * case 'lts':
+			 * case 'sts': (Its shown as "Default" cause that option does not exist any more)
 			 * case 'nochange':