f6a03b2396588598e0347241b0feecdef3f0ac23

Author
Michael Stucki <michael@stucki.io>
Committer
Marc Cornellà <marc.cornella@live.com>
Date

Message

composer: use cache to fix slowness during startup

Fixes #6647
Closes #6664

Diff

 1diff --git a/plugins/composer/composer.plugin.zsh b/plugins/composer/composer.plugin.zsh
 2index 2c6044aef79dc12b0fe5d0df9ac03c752a7a1aa1..22ecbf29940bc8808a51e6bf1085b980b7c29904 100644
 3--- a/plugins/composer/composer.plugin.zsh
 4+++ b/plugins/composer/composer.plugin.zsh
 5@@ -49,7 +49,17 @@ alias cget='curl -s https://getcomposer.org/installer | php'
 6 
 7 # Add Composer's global binaries to PATH, using Composer if available.
 8 if (( $+commands[composer] )); then
 9-  export PATH=$PATH:$(composer global config bin-dir --absolute 2>/dev/null)
10+    _retrieve_cache composer
11+
12+    if [[ -z $__composer_bin_dir ]]; then
13+        __composer_bin_dir=$(composer global config bin-dir --absolute 2>/dev/null)
14+        _store_cache composer __composer_bin_dir
15+    fi
16+
17+    # Add Composer's global binaries to PATH
18+    export PATH="$PATH:$__composer_bin_dir"
19+
20+    unset __composer_bin_dir
21 else
22   [ -d $HOME/.composer/vendor/bin ] && export PATH=$PATH:$HOME/.composer/vendor/bin
23   [ -d $HOME/.config/composer/vendor/bin ] && export PATH=$PATH:$HOME/.config/composer/vendor/bin