Shafiuzzaman
Shafiuzzaman

Reputation: 152

Latest Composer version not pulling Laravel

The Latest version of Composer is not pulling Laravel, I thought it could be because of Composer added new secure_http feature for downloading from Packagist and Laravel Packagist are in HTTP. This is what I think, so I need solution. The previous version of Composer doing well. The error showing on my terminal when I was trying to install Laravel installer, is:

Failed to decode response: zlib_decode(): data error Retrying with degraded mode, check https://getcomposer.org/doc/articles/troubleshooting.md#degraded-mode for more info Your configuration does not allow connection to http://packagist.org. See https://getcomposer.org/doc/06-config.md#secure-http for details. http://packagist.org could not be fully loaded, package information was loaded from the local cache and may be out of date Installation failed, reverting ./composer.json to its original content. [Composer\Downloader\TransportException] Your configuration does not allow connection to http://packagist.org. See https://getcomposer.org/doc/06-config.md#secure-http for details.

Upvotes: 9

Views: 23468

Answers (4)

Vasil Gerginski
Vasil Gerginski

Reputation: 585

When running (downgrade composer by running)

composer config -g secure-http false

i still got an exeption

Fatal error: Uncaught Error: Call to undefined method Composer\Package\RootPackage::getConfig() ...

I got a success finaly using additional --no-plugins

composer config -g secure-http false --no-plugins
composer self-update --no-plugins

Hope this helps anyone :)

Upvotes: 2

adnan dogar
adnan dogar

Reputation: 211

at last this one saved me ,

sudo composer self-update

sudo composer clear-cache

sudo composer config -g secure-http false

sudo composer update --no-scripts

finally done !

Upvotes: 12

Mahdi Rafatjah
Mahdi Rafatjah

Reputation: 1082

I suggest to enable openssl using:

composer config -g -- disable-tls false

And then you also need to active it in php.in

Open php.ini and search for php_openssl and you end up like this extension=php_openssl.dll

The php_openssl.dll file is in ext directory of your php so if you changed php directory and have an error like

PHP Warning:  PHP Startup: Unable to load dynamic library 
'C:\php\ext\php_openssl.dll' - The specified module could not be found. 
in Unknown on line 0

You need to set extension=php_openssl.dll to extension="your php direcroty"\ext\php_openssl.dll

Upvotes: 1

adetoola
adetoola

Reputation: 716

I had the same problem. Found the solution here:Reddit Discussion of the issue

Basically, you have two options:

  • Revert to previous version, by running

    self-update --rollback

  • Or, downgrade composer by running

    composer config -g secure-http false

Upvotes: 29

Related Questions