composer parallel install plugin.
- composer
>=1.0.0
(includes dev-master) - PHP
>=5.3
, (suggest>=5.5
, becausecurl_share_init
) - ext-curl
$ composer global require "hirak/prestissimo:^0.3"
$ composer global remove hirak/prestissimo
288s -> 26s
$ composer create-project laravel/laravel laravel1 --no-progress --profile --prefer-dist
Recognize composer's options. You don't need to set any special configuration.
in local composer.json
or ~/.composer/config.json
{
...
"config": {
"prestissimo": {
"maxConnections": 6,
"minConnections": 3,
"verbose": false,
"insecure": false,
"cainfo": "/absolute/path/to/cacert.pem",
"userAgent": "Your Awesome User Agent",
"privatePackages": [
"myorg/private1", "myorg/private2", ...
]
}
}
...
}
- default: 6
Limit connections for parallel downloading.
- default: false
CURLOPT_VERBOSE
option.
- default: false
If insecure is true, this plugin doesn't verify all https certs. (CURLOPT_SSL_VERIFYPEER
is off)
You SHOULD NOT change this option.
- default: "" (empty)
An absolute path to cacert.pem
- default: "" (empty)
User Agent for downloading. CURLOPT_USERAGENT
option.
If userAgent is empty, composer user agent is used.
- default: empty
If you list packages in this option, the local redirector(api.github.com -> codeload.github.com) will be off.
It is also recommended to use composer's authentication as you may run into access errors otherwise due to request restriction for anonymous user for external services like github.
For github.com you can use an auth.json
with an oauth access token placed on your on the same level as your composer.json
:
{
"github-oauth": {
"github.com": "YOUR_GITHUB_ACCESS_TOKEN"
}
}
MIT License. See the LICENSE file.