No Code Attached Yet bug
avatar helioloureiro
helioloureiro
22 Dec 2021

Steps to reproduce the issue

Simple installation for Joomla_4.0.5-Stable-Full_Package.zip.
Selected to proceed with language English US.

Expected result

A clean installation without errors.

Actual result

2021-12-22_14-10
It displays the error JLIB_UPDATER_ERROR_COLLECTION_PARSE_URL.

Buttons are unresponsive and all site crashes after that.
2021-12-22_14-30

Clicking to install additional languages:
2021-12-22_14-31

Trying to access main page after installation gets stuck:
2021-12-22_14-33

Apache errors log:
[Wed Dec 22 13:52:32.655656 2021] [php:warn] [pid 4173326] [client 127.0.0.1:51724] PHP Warning: Trying to access array offset on value of type null in /var/www/loureiro.eng.br/libraries/src/Language/Language.php on line 1054, referer: http://helio2.loureiro.eng.br/installation/index.php?view=remove&layout=default
[Wed Dec 22 13:52:32.655743 2021] [php:warn] [pid 4173326] [client 127.0.0.1:51724] PHP Warning: Trying to access array offset on value of type null in /var/www/loureiro.eng.br/libraries/src/Language/Language.php on line 1085, referer: http://helio2.loureiro.eng.br/installation/index.php?view=remove&layout=default
[Wed Dec 22 13:52:32.658530 2021] [php:warn] [pid 160413] [client 127.0.0.1:51726] PHP Warning: Trying to access array offset on value of type null in /var/www/loureiro.eng.br/libraries/src/Language/Language.php on line 1054, referer: http://helio2.loureiro.eng.br/installation/index.php?view=remove&layout=default
[Wed Dec 22 13:52:32.658556 2021] [php:warn] [pid 160413] [client 127.0.0.1:51726] PHP Warning: Trying to access array offset on value of type null in /var/www/loureiro.eng.br/libraries/src/Language/Language.php on line 1085, referer: http://helio2.loureiro.eng.br/installation/index.php?view=remove&layout=default
[Wed Dec 22 13:52:32.658951 2021] [php:warn] [pid 160413] [client 127.0.0.1:51726] PHP Warning: Trying to access array offset on value of type null in /var/www/loureiro.eng.br/libraries/src/Language/Language.php on line 1054, referer: http://helio2.loureiro.eng.br/installation/index.php?view=remove&layout=default
[Wed Dec 22 13:52:32.658982 2021] [php:warn] [pid 160413] [client 127.0.0.1:51726] PHP Warning: Trying to access array offset on value of type null in /var/www/loureiro.eng.br/libraries/src/Language/Language.php on line 1085, referer: http://helio2.loureiro.eng.br/installation/index.php?view=remove&layout=default

System information (as much as possible)

Browser Firefox 95.0.1.
Client operating system: Ubuntu 21.10.
Server operating system: Ubuntu 21.10.
PHP 8.0.8.
Webserver Apache 2.4.48-3.

Additional comments

Note: helio2.loureiro.eng.br is redirected via /etc/hosts to loopback on 127.0.0.1.
Joomla 3 installation works flawlessly.

avatar helioloureiro helioloureiro - open - 22 Dec 2021
avatar joomla-cms-bot joomla-cms-bot - change - 22 Dec 2021
Labels Added: No Code Attached Yet
avatar joomla-cms-bot joomla-cms-bot - labeled - 22 Dec 2021
avatar toivo
toivo - comment - 23 Dec 2021

According to the first screenshot, PHP does not have Internationalization support (intl) available. Enable it in the server and hopefully that will make a difference.


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

avatar infograf768
infograf768 - comment - 23 Dec 2021

@toivo
I am afraid this is not the cause of the issue. Intl and GD are php extensions and J can be installed without them.
The warning is related to parsing the url to get the list of available languages to install from our server as we don't get the language tag and RTL metadata.

$app->getLogger()->warning("Error parsing url: {$this->_url}", array('category' => 'updater'));
$app->enqueueMessage(Text::sprintf('JLIB_UPDATER_ERROR_COLLECTION_PARSE_URL', $this->_url), 'warning');

We would not get the Apache logs posted by the OP if the code was first checking if the metadata exists.

	public function getTag()
	{
		return $this->metadata['tag'];
	}

Same for RTL.

BTW means that the JLIB string should be added to installation language.
JLIB_UPDATER_ERROR_COLLECTION_PARSE_URL="Update: :Collection: Could not parse %s"

As for the class not found, it looks like the OP is trying to load again the installation which has been already deleted.

Therefore it looks like the OP has another problem as not reaching the languages server should not prevent J from installing.

avatar helioloureiro
helioloureiro - comment - 23 Dec 2021

Someone else pointed me out about the missing libs, which I included and tried again. Same result.

photo_2021-12-23_14-01-35

avatar helioloureiro
helioloureiro - comment - 23 Dec 2021

Ooops... pasted the wrong picture. The correct one.
2021-12-23_17-48

avatar helioloureiro
helioloureiro - comment - 23 Dec 2021

And buttons to open site or administator also not working.

2021-12-23_17-52

avatar teoberi
teoberi - comment - 24 Jan 2022

I have the same installation error regardless of the database used (MariaDB or PostgreSQL). I have tested several times, it is solved after a restart of the web server but I am not sure if the installation is complete.
Installing additional languages does not work from the administration console (System -> Install -> Languages) either, only as an extension (System -> Install -> Extensions).

avatar jkbavaria
jkbavaria - comment - 16 Mar 2022

Hello!
I have exactly the same problem.
I can install extensions, but not language packages.
What can be the reason for this?

avatar Hackwar
Hackwar - comment - 27 Mar 2022

The error is thrown when the update site is not reachable due unknown reasons. I'm wondering if the request returns a 200 code, but does not contain any data.

avatar jovanhh
jovanhh - comment - 4 Apr 2022

I have the same issue. I installed Joomla 4.12 and PHP 8.1 and received the error message above. Then I removed PHP 8.1 and installed PHP 7.4.
I don't know the reason why, but I can install Joomla 4.12 without any problem. I can also install Japanese Language Pack.

avatar jliebenow
jliebenow - comment - 2 May 2022

I had the same problem. After I installed php-curl lib in my system, installation is running fine.
Without this lib, Joomla seems to use some internal code to get the language XML file. This code is able to get the XML content from the Joomla server , BUT is somehow adding some strange characters before and after the real XML content. With these strange characters, the XML parser fails, leading to the error above

avatar teoberi
teoberi - comment - 3 May 2022

Good point, that is it!

avatar zero-24
zero-24 - comment - 3 May 2022

I had the same problem. After I installed php-curl lib in my system, installation is running fine. Without this lib, Joomla seems to use some internal code to get the language XML file. This code is able to get the XML content from the Joomla server , BUT is somehow adding some strange characters before and after the real XML content. With these strange characters, the XML parser fails, leading to the error above

Did you worked out which "strange" character that was? We are in control of that XML so we should be able to sort it out and get rid of that extra strage character

avatar jliebenow
jliebenow - comment - 19 May 2022

Actually there are from my point of view two problems, when trying to install Joomla without the php-curl lib.

First it takes several minutes, showing the cycling joomla logo before I get the error message.
By the way with 4.1.3 I get now
"Update: :Collection: Could not parse https://update.joomla.org/language/translationlist_4.xml"

May this hanging is because the corresponding TCP connection (where it gets the XML file) stays open for some minutes. And the code in SocketTransport.php is checking for eof

while (!feof($connection))
		{
			$content .= fgets($connection, 4096);
		}

when replacing it with something simular as described in the "User Contributed Notes" of https://www.php.net/manual/de/function.feof.php

while(!feof($connection)) {
	$c = fgets($connection, 4096);
	if($c === false) break;
	$content .= $c;
  }

Then it just hangs for less then 20 second.

For the strange characters before and after the real XML code. I see something like


1bcf
<?xml version="1.0" encoding="utf-8"?>
      ...
</extensionset>

0

avatar teoberi
teoberi - comment - 24 May 2022

Joomla 4.1.4 finally allows direct installation for language packs. Also, the version update works without the local download of the update package.

avatar richard67
richard67 - comment - 18 Nov 2022

Joomla 4.1.4 finally allows direct installation for language packs. Also, the version update works without the local download of the update package.

@helioloureiro Can you confirm this? Is your issue meanwhile solved so it can be closed?

avatar Hackwar Hackwar - change - 22 Feb 2023
Labels Added: bug
avatar Hackwar Hackwar - labeled - 22 Feb 2023

Add a Comment

Login with GitHub to post a comment