This is the message I got from the tech at the hosting company.
Hello Maurice,
Thank you for your patience so far.
I have further reviewed the matter on my end and following the provided step-by-step instructions via the Upgrading guide:
http://learn.elgg.org/en/stable/admin/upgrading.html#from-2-3-to-3-0
I have changed the current PHP version to PHP 7.1 and also increased the PHP values to the maximum values.
After that I have changed the PHP version in the composer.json file from PHP 5.6 to PHP 7.1:
https://www.screencast.com/t/fILoDaOSM
and in the .htaccess replaced
RewriteRule ^(.*)$ index.php?__elgg_uri=$1 [QSA,L]
with
RewriteRule ^(.*)$ index.php [QSA,L]
The next step as described are the following composer commands:
composer self-update
cd ./path/to/project/root
composer require elgg/elgg:~3.0.0
composer update
vendor/bin/elgg-cli upgrade async -v
so I have upgraded composer 1.9 to composer 1.10
https://www.screencast.com/t/5NuijDyV
and composer2 from version 2.0.8 to version 2.1.8:
https://www.screencast.com/t/HnafdikB
Once I have executed the next command:
composer require elgg/elgg:~3.0.0
by using composer2 the following error occurred:
Problem 1
- elgg/elgg[3.0.0-beta.1, ..., 3.0.x-dev] require elgg/login_as ~2.0.0 -> found elgg/login_as[2.0.0] but the package is fixed to 1.9.2 (lock file version) by a partial update and that version does not match. Make sure you list it as an argument for the update command.
- Root composer.json requires elgg/elgg ~3.0.0 -> satisfiable by elgg/elgg[3.0.0-beta.1, ..., 3.0.x-dev].
Use the option --with-all-dependencies (-W) to allow upgrades, downgrades and removals for packages currently locked to specific versions.
So with this in mind I have used the suggested command with --with-all-dependencies:
composer2 require elgg/elgg:~3.0.0 --with-all-dependencies
and another error occurred:
Problem 1
- elgg/elgg[3.0.0-beta.1, ..., 3.0.x-dev] require bower-asset/jquery ^2.1.4 -> found bower-asset/jquery[2.2.4] in the lock file but not in remote repositories, make sure you avoid updating this package to keep the one from the lock file.
- elgg/elgg[3.0.0-rc.2, ..., 3.0.7] require bower-asset/fontawesome ~5.6 -> could not be found in any version, there may be a typo in the package name.
- Root composer.json requires elgg/elgg ~3.0.0 -> satisfiable by elgg/elgg[3.0.0-beta.1, ..., 3.0.x-dev].
Potential causes:
- A typo in the package name
- The package is not available in a stable-enough version according to your minimum-stability setting
see <https://getcomposer.org/doc/04-schema.md#minimum-stability> for more details.
- It's a private package and you forgot to add a custom repository to find it
I have also attempted to update the feature by using composer version 1.10, however without success because other errors have been detected:
Problem 1
- elgg/elgg 3.0.x-dev requires bower-asset/sprintf ~1.0.3 -> no matching package found.
- elgg/elgg 3.0.7 requires bower-asset/fontawesome ~5.6 -> no matching package found.
- elgg/elgg 3.0.6 requires bower-asset/fontawesome ~5.6 -> no matching package found.
- elgg/elgg 3.0.5 requires bower-asset/fontawesome ~5.6 -> no matching package found.
- elgg/elgg 3.0.4 requires bower-asset/fontawesome ~5.6 -> no matching package found.
- elgg/elgg 3.0.3 requires bower-asset/fontawesome ~5.6 -> no matching package found.
- elgg/elgg 3.0.2 requires bower-asset/fontawesome ~5.6 -> no matching package found.
- elgg/elgg 3.0.1 requires bower-asset/fontawesome ~5.6 -> no matching package found.
- elgg/elgg 3.0.0-rc.2 requires bower-asset/fontawesome ~5.6 -> no matching package found.
- elgg/elgg 3.0.0-rc.1 requires bower-asset/sprintf ~1.0.3 -> no matching package found.
- elgg/elgg 3.0.0-beta.3 requires bower-asset/sprintf ~1.0.3 -> no matching package found.
- elgg/elgg 3.0.0-beta.2 requires bower-asset/sprintf ~1.0.3 -> no matching package found.
- elgg/elgg 3.0.0-beta.1 requires bower-asset/sprintf ~1.0.3 -> no matching package found.
- elgg/elgg 3.0.0 requires bower-asset/fontawesome ~5.6 -> no matching package found.
- Installation request for elgg/elgg ~3.0.0 -> satisfiable by elgg/elgg[3.0.0, 3.0.0-beta.1, 3.0.0-beta.2, 3.0.0-beta.3, 3.0.0-rc.1, 3.0.0-rc.2, 3.0.1, 3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.0.6, 3.0.7, 3.0.x-dev].
Potential causes:
- A typo in the package name
- The package is not available in a stable-enough version according to your minimum-stability setting
see <https://getcomposer.org/doc/04-schema.md#minimum-stability> for more details.
- It's a private package and you forgot to add a custom repository to find it
Having all this in mind it appears the upgrading process is out of our scope of experience and it requires developer knowledge. This is why I would advise you to contact a Certified Web Developer in order to review the issues and find the best resolution.
info@elgg.org
Security issues should be reported to security@elgg.org!
©2014 the Elgg Foundation
Elgg is a registered trademark of Thematic Networks.
Cover image by Raül Utrera is used under Creative Commons license.
Icons by Flaticon and FontAwesome.
- Jerome Bakker@jeabakker

Jerome Bakker - 0 likes
- updated PHP to v7.1, however if you wish to use Elgg 3.3 (the latest supported version of Elgg 3) you need PHP 7.2+ but not PHP 8.0 so 7.2, 7.3 or 7.4
- The .htaccess has been updated, for the latest best example check out https://github.com/Elgg/Elgg/blob/3.3/install/config/htaccess.dist
- "composer update --dry-run" (this will check if there are any issues when updating without actually doing the update)
- if no errors are found run "composer update"
- run "vendor/bin/elgg-cli upgrade async -v" this will execute all database migrations
You must log in to post replies.I'm not a 100% sure that Elgg 3.3 is compatible with Composer v2, but it is with Composer v1. Therefor I'll try to make the steps for for using Composer v1.
What i see already has happened:
Always make a backup before proceeding with the steps below
The reason some of the composer dependencies couldn't be found is probably that some parts in the composer.json are missing. For the best example check out https://github.com/Elgg/starter-project/blob/3.3/composer.json this is the composer.json which we use to create the ZIP releases here on the community.
When updating the composer.json to the given example please consider directly changing https://github.com/Elgg/starter-project/blob/3.3/composer.json#L9 from "3.*" to "~3.3.0"
After that the following commands can be executed
Your site is now running Elgg 3.3 and can be used again.
The documentation you used was created for updating from Elgg 2.3 to Elgg 3.0 and hasn't been updated after that (for Elgg 3.1 etc). We'll look into that.
I hope this will help somewhat.