5.5.1 Upgrade failure

Hello,

Having issues with the following. I upgraded to 5.5.1 from 5.4.x (latest) and am having this issue with this error message: Composer detected issues in your platform: Your Composer dependencies require a PHP version “>= 8.1.0”.

I have installed PHP 8.1 with no issues running against apache on Ubuntu. I am looking for some assistance, please.

Thanks
Jose

Hi,

What do you see if you run php -v from the command line?

/var/www/html$ php -v
PHP 8.1.8 (cli) (built: Jul 11 2022 08:29:57) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.8, Copyright (c) Zend Technologies
with Zend OPcache v8.1.8, Copyright (c), by Zend Technologies

@david do you have any suggestions?

Does composer update fail too?

Actually, I didn’t try that. Just ran it now and it does seem to fail??

Here’s the output:

PHP Deprecated: Return type of Symfony\Component\Console\Helper\HelperSet::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Symfony/Component/Console/Helper/H elperSet.php on line 104

Deprecated: Return type of Symfony\Component\Console\Helper\HelperSet::getIterator() should either be compatible with IteratorAggregate::getIterator(): Trave rsable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Symfony/Component/Console/Helper/Helper Set.php on line 104
Deprecation Notice: Optional parameter $schema declared before required parameter $path is implicitly treated as a required parameter in /usr/share/php/JsonS chema/Constraints/UndefinedConstraint.php:62
Deprecation Notice: Optional parameter $schema declared before required parameter $path is implicitly treated as a required parameter in /usr/share/php/JsonS chema/Constraints/UndefinedConstraint.php:108
Deprecation Notice: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/JsonSchema/Constraints/Constraint.php:48
Deprecation Notice: Return type of Composer\Repository\ArrayRepository::count() should either be compatible with Countable::count(): int, or the #[\ReturnTyp eWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/Repository/ArrayRepository.php:206
Deprecation Notice: Return type of Composer\Repository\ArrayRepository::count() should either be compatible with Countable::count(): int, or the #[\ReturnTyp eWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/Repository/ArrayRepository.php:206
Deprecation Notice: Return type of Composer\Repository\ArrayRepository::count() should either be compatible with Countable::count(): int, or the #[\ReturnTyp eWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/Repository/ArrayRepository.php:206
Deprecation Notice: Return type of Symfony\Component\Process\Process::getIterator($flags = 0) should either be compatible with IteratorAggregate::getIterator (): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Symfony/Component/Process/Proc ess.php:606
Deprecation Notice: Method ReflectionParameter::getClass() is deprecated in /usr/share/php/Composer/Repository/RepositoryManager.php:130
Deprecation Notice: Method ReflectionParameter::getClass() is deprecated in /usr/share/php/Composer/Repository/RepositoryManager.php:130
Do not run Composer as root/super user! See https://getcomposer.org/root for details
Deprecation Notice: Return type of Composer\Repository\ArrayRepository::count() should either be compatible with Countable::count(): int, or the #[\ReturnTyp eWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/Repository/ArrayRepository.php:206
Deprecation Notice: Return type of Composer\Repository\CompositeRepository::count() should either be compatible with Countable::count(): int, or the #[\Retur nTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/Repository/CompositeRepository.php:139
Loading composer repositories with package information
Deprecation Notice: Return type of Composer\DependencyResolver\Pool::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWi llChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/DependencyResolver/Pool.php:166
Warning from https://repo.packagist.org: Support for Composer 1 is deprecated and some packages will not be available. You should upgrade to Composer 2. See Deprecating Packagist.org support for Composer 1.x
Info from https://repo.packagist.org: #StandWithUkraine
Updating dependencies (including require-dev)
Deprecation Notice: Return type of Composer\DependencyResolver\RuleSet::getIterator() should either be compatible with IteratorAggregate::getIterator(): Trav ersable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/DependencyResolver/RuleSet.ph p:114
Deprecation Notice: Return type of Composer\DependencyResolver\RuleSet::count() should either be compatible with Countable::count(): int, or the #[\ReturnTyp eWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/DependencyResolver/RuleSet.php:99

Hm, I’m not sure. It does seem like it’s not using the php 8.1. I was also having problems but after upgrading to 8.1 it worked. However, my webserver has some automated stuff, so if you’re doing all manually maybe it’s that nginx still not using the updated php? Here’s a little bit more info for the manual installation: Release Annoucements - #37 by david?

Thanks for the reply @Stevan. I’ve gone through that link and have validated PHP and its modules. The difference in my case is that I’m using Apache and not Nginx.

does composer -vvv about says it’s running on php 8.1 and with composer version 2?

Here’s the output of “composer -vvv” Not sure what you mean about version 2?

PHP Deprecated: Return type of Symfony\Component\Console\Helper\HelperSet::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Symfony/Component/Console/Helper/HelperSet.php on line 104

Deprecated: Return type of Symfony\Component\Console\Helper\HelperSet::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Symfony/Component/Console/Helper/HelperSet.php on line 104
Deprecation Notice: Optional parameter $schema declared before required parameter $path is implicitly treated as a required parameter in /usr/share/php/JsonSchema/Constraints/UndefinedConstraint.php:62
Stack trace:
/usr/share/php/JsonSchema/Constraints/Factory.php:195
/usr/share/php/JsonSchema/Constraints/Constraint.php:116
/usr/share/php/JsonSchema/Constraints/SchemaConstraint.php:92
/usr/share/php/JsonSchema/Validator.php:63
/usr/share/php/JsonSchema/Validator.php:78
/usr/share/php/Composer/Json/JsonFile.php:192
/usr/share/php/Composer/Factory.php:290
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: Optional parameter $schema declared before required parameter $path is implicitly treated as a required parameter in /usr/share/php/JsonSchema/Constraints/UndefinedConstraint.php:108
Stack trace:
/usr/share/php/JsonSchema/Constraints/Factory.php:195
/usr/share/php/JsonSchema/Constraints/Constraint.php:116
/usr/share/php/JsonSchema/Constraints/SchemaConstraint.php:92
/usr/share/php/JsonSchema/Validator.php:63
/usr/share/php/JsonSchema/Validator.php:78
/usr/share/php/Composer/Json/JsonFile.php:192
/usr/share/php/Composer/Factory.php:290
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/JsonSchema/Constraints/Constraint.php:48
Stack trace:
/usr/share/php/JsonSchema/Constraints/Constraint.php:48
/usr/share/php/JsonSchema/Constraints/UndefinedConstraint.php:39
/usr/share/php/JsonSchema/Constraints/Constraint.php:118
/usr/share/php/JsonSchema/Constraints/SchemaConstraint.php:92
/usr/share/php/JsonSchema/Validator.php:63
/usr/share/php/JsonSchema/Validator.php:78
/usr/share/php/Composer/Json/JsonFile.php:192
/usr/share/php/Composer/Factory.php:290
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Reading ./composer.json
Loading config file ./composer.json
Checked CA file /etc/ssl/certs/ca-certificates.crt: valid
Deprecation Notice: Return type of Composer\Repository\ArrayRepository::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/Repository/ArrayRepository.php:206
Stack trace:
/usr/share/php/Composer/Repository/WritableArrayRepository.php:22
/usr/share/php/Composer/autoload.php:273
/usr/share/php/Composer/Repository/FilesystemRepository.php:25
/usr/share/php/Composer/autoload.php:273
/usr/share/php/Composer/Repository/InstalledFilesystemRepository.php:20
/usr/share/php/Composer/autoload.php:273
/usr/share/php/Composer/Factory.php:429
/usr/share/php/Composer/Factory.php:339
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: Return type of Composer\Repository\ArrayRepository::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/Repository/ArrayRepository.php:206
Stack trace:
/usr/share/php/Composer/Repository/FilesystemRepository.php:25
/usr/share/php/Composer/autoload.php:273
/usr/share/php/Composer/Repository/InstalledFilesystemRepository.php:20
/usr/share/php/Composer/autoload.php:273
/usr/share/php/Composer/Factory.php:429
/usr/share/php/Composer/Factory.php:339
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: Return type of Composer\Repository\ArrayRepository::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/Repository/ArrayRepository.php:206
Stack trace:
/usr/share/php/Composer/Factory.php:429
/usr/share/php/Composer/Factory.php:339
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Executing command (/var/www/html/invoice-ninja): git branch --no-color --no-abbrev -v
Deprecation Notice: Return type of Symfony\Component\Process\Process::getIterator($flags = 0) should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Symfony/Component/Process/Process.php:606
Stack trace:
/usr/share/php/Composer/Util/ProcessExecutor.php:68
/usr/share/php/Composer/Package/Version/VersionGuesser.php:117
/usr/share/php/Composer/Package/Version/VersionGuesser.php:67
/usr/share/php/Composer/Package/Loader/RootPackageLoader.php:88
/usr/share/php/Composer/Factory.php:351
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Executing command (/var/www/html/invoice-ninja): git describe --exact-match --tags
Executing command (/var/www/html/invoice-ninja): git log --pretty="%H" -n1 HEAD
Executing command (/var/www/html/invoice-ninja): hg branch
Executing command (/var/www/html/invoice-ninja): fossil branch list
Executing command (/var/www/html/invoice-ninja): fossil tag list
Executing command (/var/www/html/invoice-ninja): svn info --xml
Deprecation Notice: Method ReflectionParameter::getClass() is deprecated in /usr/share/php/Composer/Repository/RepositoryManager.php:130
Stack trace:
/usr/share/php/Composer/Repository/RepositoryFactory.php:107
/usr/share/php/Composer/Package/Loader/RootPackageLoader.php:174
/usr/share/php/Composer/Factory.php:351
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: Method ReflectionParameter::getClass() is deprecated in /usr/share/php/Composer/Repository/RepositoryManager.php:130
Stack trace:
/usr/share/php/Composer/Repository/RepositoryFactory.php:107
/usr/share/php/Composer/Package/Loader/RootPackageLoader.php:174
/usr/share/php/Composer/Factory.php:351
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Cannot create cache directory /var/www/.composer/cache/repo/https—repo.packagist.org/, or directory is not writable. Proceeding without cache
Cannot create cache directory /var/www/.composer/cache/files/, or directory is not writable. Proceeding without cache
Failed to initialize global composer: Composer could not find the config file: /var/www/.composer/composer.json
To initialize a project, please create a composer.json file as described in the https://getcomposer.org/ “Getting Started” section
Reading /var/www/html/invoice-ninja/vendor/composer/installed.json
Running 1.10.1 (2020-03-13 20:34:27) with PHP 8.1.8 on Linux / 5.4.0-122-generic


/ / ____ ___ ____ ____ ________ _____
/ / / __ / __ `
_ / __ / __ / / _ / /
/ /
/ /
/ / / / / / / /
/ / /
/ (__ ) / /
_
/_// // // ./_/_/___//
/
/
Composer 1.10.1 2020-03-13 20:34:27

Usage:
command [options] [arguments]

Deprecation Notice: mb_detect_encoding(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Helper/Helper.php:50
Stack trace:
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:329
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:97
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:197
/usr/share/php/Symfony/Component/Console/Descriptor/Descriptor.php:55
/usr/share/php/Symfony/Component/Console/Helper/DescriptorHelper.php:67
/usr/share/php/Symfony/Component/Console/Command/ListCommand.php:75
/usr/share/php/Symfony/Component/Console/Command/Command.php:255
/usr/share/php/Symfony/Component/Console/Application.php:934
/usr/share/php/Symfony/Component/Console/Application.php:273
/usr/share/php/Composer/Console/Application.php:281
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: mb_strwidth(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Helper/Helper.php:54
Stack trace:
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:329
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:97
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:197
/usr/share/php/Symfony/Component/Console/Descriptor/Descriptor.php:55
/usr/share/php/Symfony/Component/Console/Helper/DescriptorHelper.php:67
/usr/share/php/Symfony/Component/Console/Command/ListCommand.php:75
/usr/share/php/Symfony/Component/Console/Command/Command.php:255
/usr/share/php/Symfony/Component/Console/Application.php:934
/usr/share/php/Symfony/Component/Console/Application.php:273
/usr/share/php/Composer/Console/Application.php:281
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: mb_detect_encoding(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Helper/Helper.php:50
Stack trace:
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:329
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:97
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:197
/usr/share/php/Symfony/Component/Console/Descriptor/Descriptor.php:55
/usr/share/php/Symfony/Component/Console/Helper/DescriptorHelper.php:67
/usr/share/php/Symfony/Component/Console/Command/ListCommand.php:75
/usr/share/php/Symfony/Component/Console/Command/Command.php:255
/usr/share/php/Symfony/Component/Console/Application.php:934
/usr/share/php/Symfony/Component/Console/Application.php:273
/usr/share/php/Composer/Console/Application.php:281
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: mb_strwidth(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Helper/Helper.php:54
Stack trace:
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:329
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:97
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:197
/usr/share/php/Symfony/Component/Console/Descriptor/Descriptor.php:55
/usr/share/php/Symfony/Component/Console/Helper/DescriptorHelper.php:67
/usr/share/php/Symfony/Component/Console/Command/ListCommand.php:75
/usr/share/php/Symfony/Component/Console/Command/Command.php:255
/usr/share/php/Symfony/Component/Console/Application.php:934
/usr/share/php/Symfony/Component/Console/Application.php:273
/usr/share/php/Composer/Console/Application.php:281
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: mb_detect_encoding(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Helper/Helper.php:50
Stack trace:
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:329
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:97
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:197
/usr/share/php/Symfony/Component/Console/Descriptor/Descriptor.php:55
/usr/share/php/Symfony/Component/Console/Helper/DescriptorHelper.php:67
/usr/share/php/Symfony/Component/Console/Command/ListCommand.php:75
/usr/share/php/Symfony/Component/Console/Command/Command.php:255
/usr/share/php/Symfony/Component/Console/Application.php:934
/usr/share/php/Symfony/Component/Console/Application.php:273
/usr/share/php/Composer/Console/Application.php:281
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: mb_strwidth(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Helper/Helper.php:54
Stack trace:
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:329
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:97
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:197
/usr/share/php/Symfony/Component/Console/Descriptor/Descriptor.php:55
/usr/share/php/Symfony/Component/Console/Helper/DescriptorHelper.php:67
/usr/share/php/Symfony/Component/Console/Command/ListCommand.php:75
/usr/share/php/Symfony/Component/Console/Command/Command.php:255
/usr/share/php/Symfony/Component/Console/Application.php:934
/usr/share/php/Symfony/Component/Console/Application.php:273
/usr/share/php/Composer/Console/Application.php:281
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: mb_detect_encoding(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Helper/Helper.php:50
Stack trace:
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:329
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:97
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:197
/usr/share/php/Symfony/Component/Console/Descriptor/Descriptor.php:55
/usr/share/php/Symfony/Component/Console/Helper/DescriptorHelper.php:67
/usr/share/php/Symfony/Component/Console/Command/ListCommand.php:75
/usr/share/php/Symfony/Component/Console/Command/Command.php:255
/usr/share/php/Symfony/Component/Console/Application.php:934
/usr/share/php/Symfony/Component/Console/Application.php:273
/usr/share/php/Composer/Console/Application.php:281
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: mb_strwidth(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Helper/Helper.php:54
Stack trace:
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:329
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:97
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:197
/usr/share/php/Symfony/Component/Console/Descriptor/Descriptor.php:55
/usr/share/php/Symfony/Component/Console/Helper/DescriptorHelper.php:67
/usr/share/php/Symfony/Component/Console/Command/ListCommand.php:75
/usr/share/php/Symfony/Component/Console/Command/Command.php:255
/usr/share/php/Symfony/Component/Console/Application.php:934
/usr/share/php/Symfony/Component/Console/Application.php:273
/usr/share/php/Composer/Console/Application.php:281
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: mb_detect_encoding(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Helper/Helper.php:50
Stack trace:
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:329
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:97
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:197
/usr/share/php/Symfony/Component/Console/Descriptor/Descriptor.php:55
/usr/share/php/Symfony/Component/Console/Helper/DescriptorHelper.php:67
/usr/share/php/Symfony/Component/Console/Command/ListCommand.php:75
/usr/share/php/Symfony/Component/Console/Command/Command.php:255
/usr/share/php/Symfony/Component/Console/Application.php:934
/usr/share/php/Symfony/Component/Console/Application.php:273
/usr/share/php/Composer/Console/Application.php:281
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: mb_strwidth(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Helper/Helper.php:54
Stack trace:
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:329
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:97
/usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:197
/usr/share/php/Symfony/Component/Console/Descriptor/Descriptor.php:55
/usr/share/php/Symfony/Component/Console/Helper/DescriptorHelper.php:67
/usr/share/php/Symfony/Component/Console/Command/ListCommand.php:75
/usr/share/php/Symfony/Component/Console/Command/Command.php:255
/usr/share/php/Symfony/Component/Console/Application.php:934
/usr/share/php/Symfony/Component/Console/Application.php:273
/usr/share/php/Composer/Console/Application.php:281
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Options:
-h, --help Display this help message
-q, --quiet Do not output any message
-V, --version Display this application versionDeprecation Notice: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:120
Stack trace:
/usr/share/php/Symfony/Component/Console/Descriptor/Descriptor.php:55
/usr/share/php/Symfony/Component/Console/Helper/DescriptorHelper.php:67
/usr/share/php/Symfony/Component/Console/Command/ListCommand.php:75
/usr/share/php/Symfony/Component/Console/Command/Command.php:255
/usr/share/php/Symfony/Component/Console/Application.php:934
/usr/share/php/Symfony/Component/Console/Application.php:273
/usr/share/php/Composer/Console/Application.php:281
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62

  --ansi                     Force ANSI outputDeprecation Notice: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:120

Stack trace:
/usr/share/php/Symfony/Component/Console/Descriptor/Descriptor.php:55
/usr/share/php/Symfony/Component/Console/Helper/DescriptorHelper.php:67
/usr/share/php/Symfony/Component/Console/Command/ListCommand.php:75
/usr/share/php/Symfony/Component/Console/Command/Command.php:255
/usr/share/php/Symfony/Component/Console/Application.php:934
/usr/share/php/Symfony/Component/Console/Application.php:273
/usr/share/php/Composer/Console/Application.php:281
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62

  --no-ansi                  Disable ANSI output

-n, --no-interaction Do not ask any interactive questionDeprecation Notice: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:120
Stack trace:
/usr/share/php/Symfony/Component/Console/Descriptor/Descriptor.php:55
/usr/share/php/Symfony/Component/Console/Helper/DescriptorHelper.php:67
/usr/share/php/Symfony/Component/Console/Command/ListCommand.php:75
/usr/share/php/Symfony/Component/Console/Command/Command.php:255
/usr/share/php/Symfony/Component/Console/Application.php:934
/usr/share/php/Symfony/Component/Console/Application.php:273
/usr/share/php/Composer/Console/Application.php:281
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62

  --profile                  Display timing and memory usage informationDeprecation Notice: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:120

Stack trace:
/usr/share/php/Symfony/Component/Console/Descriptor/Descriptor.php:55
/usr/share/php/Symfony/Component/Console/Helper/DescriptorHelper.php:67
/usr/share/php/Symfony/Component/Console/Command/ListCommand.php:75
/usr/share/php/Symfony/Component/Console/Command/Command.php:255
/usr/share/php/Symfony/Component/Console/Application.php:934
/usr/share/php/Symfony/Component/Console/Application.php:273
/usr/share/php/Composer/Console/Application.php:281
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62

  --no-plugins               Whether to disable plugins.

-d, --working-dir=WORKING-DIR If specified, use the given directory as working directory.Deprecation Notice: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:120
Stack trace:
/usr/share/php/Symfony/Component/Console/Descriptor/Descriptor.php:55
/usr/share/php/Symfony/Component/Console/Helper/DescriptorHelper.php:67
/usr/share/php/Symfony/Component/Console/Command/ListCommand.php:75
/usr/share/php/Symfony/Component/Console/Command/Command.php:255
/usr/share/php/Symfony/Component/Console/Application.php:934
/usr/share/php/Symfony/Component/Console/Application.php:273
/usr/share/php/Composer/Console/Application.php:281
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62

  --no-cache                 Prevent use of the cache

-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

Available commands:
about Shows the short information about Composer.
archive Creates an archive of this composer package.
browse [home] Opens the package’s repository URL or homepage in your browser.
check-platform-reqs Check that platform requirements are satisfied.
clear-cache [clearcache|cc] Clears composer’s internal package cache.
config Sets config options.
create-project Creates new project from a package into given directory.
depends [why] Shows which packages cause the given package to be installed.
diagnose Diagnoses the system to identify common errors.
dump-autoload [dumpautoload] Dumps the autoloader.
exec Executes a vendored binary/script.
format Runs the format script as defined in composer.json.
fund Discover how to help fund the maintenance of your dependencies.
global Allows running commands in the global composer dir ($COMPOSER_HOME).
help Displays help for a command
init Creates a basic composer.json file in current directory.
install [i] Installs the project dependencies from the composer.lock file if present, or falls back on the composer.json.
licenses Shows information about licenses of dependencies.
list Lists commands
outdated Shows a list of installed packages that have updates available, including their latest version.
prohibits [why-not] Shows which packages prevent the given package from being installed.
remove Removes a package from the require or require-dev.
require Adds required packages to your composer.json and installs them.
run-script [run] Runs the scripts defined in composer.json.
search Searches for packages.
show [info] Shows information about packages.
status Shows a list of locally modified packages, for packages installed from source.
suggests Shows package suggestions.
update [u|upgrade] Upgrades your dependencies to the latest version according to composer.json, and updates the composer.lock file.
validate Validates a composer.json and composer.lock.

Sorry, should have placed it on it’s on line, it’s actually:
composer -vvv about

No worries, here you go:

composer -vvv about
PHP Deprecated: Return type of Symfony\Component\Console\Helper\HelperSet::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Symfony/Component/Console/Helper/HelperSet.php on line 104

Deprecated: Return type of Symfony\Component\Console\Helper\HelperSet::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Symfony/Component/Console/Helper/HelperSet.php on line 104
Deprecation Notice: Optional parameter $schema declared before required parameter $path is implicitly treated as a required parameter in /usr/share/php/JsonSchema/Constraints/UndefinedConstraint.php:62
Stack trace:
/usr/share/php/JsonSchema/Constraints/Factory.php:195
/usr/share/php/JsonSchema/Constraints/Constraint.php:116
/usr/share/php/JsonSchema/Constraints/SchemaConstraint.php:92
/usr/share/php/JsonSchema/Validator.php:63
/usr/share/php/JsonSchema/Validator.php:78
/usr/share/php/Composer/Json/JsonFile.php:192
/usr/share/php/Composer/Factory.php:290
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: Optional parameter $schema declared before required parameter $path is implicitly treated as a required parameter in /usr/share/php/JsonSchema/Constraints/UndefinedConstraint.php:108
Stack trace:
/usr/share/php/JsonSchema/Constraints/Factory.php:195
/usr/share/php/JsonSchema/Constraints/Constraint.php:116
/usr/share/php/JsonSchema/Constraints/SchemaConstraint.php:92
/usr/share/php/JsonSchema/Validator.php:63
/usr/share/php/JsonSchema/Validator.php:78
/usr/share/php/Composer/Json/JsonFile.php:192
/usr/share/php/Composer/Factory.php:290
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/JsonSchema/Constraints/Constraint.php:48
Stack trace:
/usr/share/php/JsonSchema/Constraints/Constraint.php:48
/usr/share/php/JsonSchema/Constraints/UndefinedConstraint.php:39
/usr/share/php/JsonSchema/Constraints/Constraint.php:118
/usr/share/php/JsonSchema/Constraints/SchemaConstraint.php:92
/usr/share/php/JsonSchema/Validator.php:63
/usr/share/php/JsonSchema/Validator.php:78
/usr/share/php/Composer/Json/JsonFile.php:192
/usr/share/php/Composer/Factory.php:290
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Reading ./composer.json
Loading config file ./composer.json
Checked CA file /etc/ssl/certs/ca-certificates.crt: valid
Deprecation Notice: Return type of Composer\Repository\ArrayRepository::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/Repository/ArrayRepository.php:206
Stack trace:
/usr/share/php/Composer/Repository/WritableArrayRepository.php:22
/usr/share/php/Composer/autoload.php:273
/usr/share/php/Composer/Repository/FilesystemRepository.php:25
/usr/share/php/Composer/autoload.php:273
/usr/share/php/Composer/Repository/InstalledFilesystemRepository.php:20
/usr/share/php/Composer/autoload.php:273
/usr/share/php/Composer/Factory.php:429
/usr/share/php/Composer/Factory.php:339
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: Return type of Composer\Repository\ArrayRepository::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/Repository/ArrayRepository.php:206
Stack trace:
/usr/share/php/Composer/Repository/FilesystemRepository.php:25
/usr/share/php/Composer/autoload.php:273
/usr/share/php/Composer/Repository/InstalledFilesystemRepository.php:20
/usr/share/php/Composer/autoload.php:273
/usr/share/php/Composer/Factory.php:429
/usr/share/php/Composer/Factory.php:339
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: Return type of Composer\Repository\ArrayRepository::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/Repository/ArrayRepository.php:206
Stack trace:
/usr/share/php/Composer/Factory.php:429
/usr/share/php/Composer/Factory.php:339
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Executing command (/var/www/html/invoice-ninja): git branch --no-color --no-abbrev -v
Deprecation Notice: Return type of Symfony\Component\Process\Process::getIterator($flags = 0) should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Symfony/Component/Process/Process.php:606
Stack trace:
/usr/share/php/Composer/Util/ProcessExecutor.php:68
/usr/share/php/Composer/Package/Version/VersionGuesser.php:117
/usr/share/php/Composer/Package/Version/VersionGuesser.php:67
/usr/share/php/Composer/Package/Loader/RootPackageLoader.php:88
/usr/share/php/Composer/Factory.php:351
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Executing command (/var/www/html/invoice-ninja): git describe --exact-match --tags
Executing command (/var/www/html/invoice-ninja): git log --pretty="%H" -n1 HEAD
Executing command (/var/www/html/invoice-ninja): hg branch
Executing command (/var/www/html/invoice-ninja): fossil branch list
Executing command (/var/www/html/invoice-ninja): fossil tag list
Executing command (/var/www/html/invoice-ninja): svn info --xml
Deprecation Notice: Method ReflectionParameter::getClass() is deprecated in /usr/share/php/Composer/Repository/RepositoryManager.php:130
Stack trace:
/usr/share/php/Composer/Repository/RepositoryFactory.php:107
/usr/share/php/Composer/Package/Loader/RootPackageLoader.php:174
/usr/share/php/Composer/Factory.php:351
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Deprecation Notice: Method ReflectionParameter::getClass() is deprecated in /usr/share/php/Composer/Repository/RepositoryManager.php:130
Stack trace:
/usr/share/php/Composer/Repository/RepositoryFactory.php:107
/usr/share/php/Composer/Package/Loader/RootPackageLoader.php:174
/usr/share/php/Composer/Factory.php:351
/usr/share/php/Composer/Factory.php:576
/usr/share/php/Composer/Console/Application.php:368
/usr/share/php/Composer/Console/Application.php:486
/usr/share/php/Composer/Console/Application.php:178
/usr/share/php/Symfony/Component/Console/Application.php:149
/usr/share/php/Composer/Console/Application.php:113
/usr/bin/composer:62
Failed to initialize global composer: Composer could not find the config file: /home/fssadmin/.config/composer/composer.json
To initialize a project, please create a composer.json file as described in the https://getcomposer.org/ “Getting Started” section
Reading /var/www/html/invoice-ninja/vendor/composer/installed.json
Running 1.10.1 (2020-03-13 20:34:27) with PHP 8.1.8 on Linux / 5.4.0-122-generic
Composer - Dependency Manager for PHP
Composer is a dependency manager tracking local dependencies of your projects and libraries.
See https://getcomposer.org/ for more information.

I think the previous one actually said the problem, it seems you’re running composer v.1.10.1. Try running composer self-update, then check again with composer -vvv about

Hmm, not sure that it liked that command switch:

/var/www/html/invoice-ninja$ composer self-update
PHP Deprecated: Return type of Symfony\Component\Console\Helper\HelperSet::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Symfony/Component/Console/Helper/HelperSet.php on line 104

Deprecated: Return type of Symfony\Component\Console\Helper\HelperSet::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Symfony/Component/Console/Helper/HelperSet.php on line 104
Deprecation Notice: Optional parameter $schema declared before required parameter $path is implicitly treated as a required parameter in /usr/share/php/JsonSchema/Constraints/UndefinedConstraint.php:62
Deprecation Notice: Optional parameter $schema declared before required parameter $path is implicitly treated as a required parameter in /usr/share/php/JsonSchema/Constraints/UndefinedConstraint.php:108
Deprecation Notice: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/JsonSchema/Constraints/Constraint.php:48
Deprecation Notice: Return type of Composer\Repository\ArrayRepository::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/Repository/ArrayRepository.php:206
Deprecation Notice: Return type of Composer\Repository\ArrayRepository::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/Repository/ArrayRepository.php:206
Deprecation Notice: Return type of Composer\Repository\ArrayRepository::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Composer/Repository/ArrayRepository.php:206
Deprecation Notice: Return type of Symfony\Component\Process\Process::getIterator($flags = 0) should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/php/Symfony/Component/Process/Process.php:606
Deprecation Notice: Method ReflectionParameter::getClass() is deprecated in /usr/share/php/Composer/Repository/RepositoryManager.php:130
Deprecation Notice: Method ReflectionParameter::getClass() is deprecated in /usr/share/php/Composer/Repository/RepositoryManager.php:130

Command “self-update” is not defined.

What about composer selfupdate

Edit: If that doesn’t work, then manually replace the composer.phar with the latest version.

No luck with that. I ended up running just “composer” and it exposed the following. Judging by what’s listed, I assume the command is: “composer update”

-h, --help Display this help message
-q, --quiet Do not output any message
-V, --version Display this application versionDeprecation Notice: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:120

  --ansi                     Force ANSI outputDeprecation Notice: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:120

  --no-ansi                  Disable ANSI output

-n, --no-interaction Do not ask any interactive questionDeprecation Notice: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:120

  --profile                  Display timing and memory usage informationDeprecation Notice: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:120

  --no-plugins               Whether to disable plugins.

-d, --working-dir=WORKING-DIR If specified, use the given directory as working directory.Deprecation Notice: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:120

  --no-cache                 Prevent use of the cache

-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

Available commands:
about Shows the short information about Composer.
archive Creates an archive of this composer package.
browse [home] Opens the package’s repository URL or homepage in your browser.
check-platform-reqs Check that platform requirements are satisfied.
clear-cache [clearcache|cc] Clears composer’s internal package cache.
config Sets config options.
create-project Creates new project from a package into given directory.
depends [why] Shows which packages cause the given package to be installed.
diagnose Diagnoses the system to identify common errors.
dump-autoload [dumpautoload] Dumps the autoloader.
exec Executes a vendored binary/script.
format Runs the format script as defined in composer.json.
fund Discover how to help fund the maintenance of your dependencies.
global Allows running commands in the global composer dir ($COMPOSER_HOME).
help Displays help for a command
init Creates a basic composer.json file in current directory.
install [i] Installs the project dependencies from the composer.lock file if present, or falls back on the composer.json.
licenses Shows information about licenses of dependencies.
list Lists commands
outdated Shows a list of installed packages that have updates available, including their latest version.
prohibits [why-not] Shows which packages prevent the given package from being installed.
remove Removes a package from the require or require-dev.
require Adds required packages to your composer.json and installs them.
run-script [run] Runs the scripts defined in composer.json.
search Searches for packages.
show [info] Shows information about packages.
status Shows a list of locally modified packages, for packages installed from source.
suggests Shows package suggestions.
update [u|upgrade] Upgrades your dependencies to the latest version according to composer.json, and updates the composer.lock file.
validate Validates a composer.json and composer.lock.

Was composer installed with a package manager? Maybe using apt?

Not sure to be honest. I ended up running composer update and it’s ran but never stopped/broke out of the upgrade.

Regarding your earlier question about getting installed by apt, do you happen to know how to validate if it was or not?

You could try apt list composer, and see if what returns ends with a “[installed]”

The update takes a while… but try first to bring the composer up-to-date.

Edit: update is not the same as self-update Docs