Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compatibility with Composer 2.0.0 #233

Closed
shqear93 opened this issue Oct 24, 2020 · 14 comments
Closed

Compatibility with Composer 2.0.0 #233

shqear93 opened this issue Oct 24, 2020 · 14 comments

Comments

@shqear93
Copy link

shqear93 commented Oct 24, 2020

Composer 2.0.0 has been released 3 hours ago and prestissimo now can't be installed on the new version
https://github.com/composer/composer/releases/tag/2.0.0

$ composer.phar global require hirak/prestissimo
...
Do not run Composer as root/super user! See https://getcomposer.org/root for details

                                                                                                                                       
  [InvalidArgumentException]                                                                                                           
  Package hirak/prestissimo at version  has a PHP requirement incompatible with your PHP version, PHP extensions and Composer version  
...
@mhemrg
Copy link

mhemrg commented Oct 24, 2020

Shall we install prestissimo with Composer 2? Is there any benefits anymore?

@kubawerlos
Copy link
Contributor

The PR is waiting since April: #223

@allan-simon
Copy link

@mhemrg i'm interested in the answer as well, is it an open question from you, or do you have some argument that would show it may be no more needed ?

@mhemrg
Copy link

mhemrg commented Oct 25, 2020

@allan-simon I guess there should be no need to use prestissimo in Composer 2 because it comes with parallel downloads built-in: #218 (comment)

I haven't benchmarked yet, but benchmarks would help a lot to answer this question.

@mhemrg
Copy link

mhemrg commented Oct 25, 2020

OK. I just ran some simple benchmarks and I'm going to share the results:

Command: composer create-project laravel/laravel laravel --no-progress --profile --prefer-dist

Benchmark 1:
Environment: Docker (Ubuntu 18.04)
Composer: 1.10
Prestissimo is installed.

First run: [570.2MiB/32.66s] Memory usage: 570.24MiB (peak: 1009.54MiB), time: 32.66s
Second run: [570.6MiB/25.90s] Memory usage: 570.62MiB (peak: 1010.2MiB), time: 25.9s

Benchmark 2:
Environment: Docker (Ubuntu 18.04)
Composer: 2.1.0
No Prestissimo.

First run: [74.7MiB/17.03s] Memory usage: 74.74MiB (peak: 196.55MiB), time: 17.03s
Second run: [31.5MiB/6.99s] Memory usage: 31.52MiB (peak: 159.23MiB), time: 6.99s

@iFeddy
Copy link

iFeddy commented Oct 25, 2020

OK. I just ran some simple benchmarks and I'm going to share the results:

Command: composer create-project laravel/laravel laravel --no-progress --profile --prefer-dist

Benchmark 1:
Environment: Docker (Ubuntu 18.04)
Composer: 1.10
Prestissimo is installed.

First run: [570.2MiB/32.66s] Memory usage: 570.24MiB (peak: 1009.54MiB), time: 32.66s
Second run: [570.6MiB/25.90s] Memory usage: 570.62MiB (peak: 1010.2MiB), time: 25.9s

Benchmark 2:
Environment: Docker (Ubuntu 18.04)
Composer: 2.1.0
No Prestissimo.

First run: [74.7MiB/17.03s] Memory usage: 74.74MiB (peak: 196.55MiB), time: 17.03s
Second run: [31.5MiB/6.99s] Memory usage: 31.52MiB (peak: 159.23MiB), time: 6.99s

Awesome! thank you for the info. Looks like composer 2 its getting better 🎉

@ericknyoto
Copy link

Thanks for the benchmark. Removing Prestissimo.

@BenBroide
Copy link

I removed this plugin after the issues with composer 2, build seems to be faster with composer2.

@mikaelkundert
Copy link

We need to arrange funeral?

@bkuhl
Copy link

bkuhl commented Oct 28, 2020

@hirak Thank you so much for this project. I can't tell you how much I've appreciated having such tooling in place, used on other projects to speed up build times.

@c33s
Copy link

c33s commented Nov 1, 2020

i made a small PR with a noop mode if this plugin is installed and composer2 is used, should run normally with composer1, please test and comment. see #239

@kubawerlos
Copy link
Contributor

@c33s I made a PR to allow Composer 2. even with some tests, but @hirak was not interested: #223 (comment)

@c33s
Copy link

c33s commented Nov 1, 2020

@kubawerlos oh... well.
@hirak any change to merge @kubawerlos or mine PR so that in environments where this plugin is installed globally it keeps working no matter if i have an old composer1 or a new composer2 project?

@vworldat
Copy link

vworldat commented Nov 2, 2020

This would really help the transition to composer 2! I run dozens of projects on a multitude of servers, CI docker containers and dev environments, and it would be immensely helpful to be able to just update composer everywhere I come by without having to worry whether all projects on that particular machine or using that container for CI have already been dropping hirak/prestissimo from their stack.
Please include one of those last fixes to make it easy for your users to abandon usage of this project in a controlled way!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests