浏览代码

composer: use cache to fix slowness during startup

Fixes #6647
Closes #6664
Michael Stucki 7 年之前
父节点
当前提交
f6a03b2396
共有 1 个文件被更改,包括 11 次插入1 次删除
  1. 11 1
      plugins/composer/composer.plugin.zsh

+ 11 - 1
plugins/composer/composer.plugin.zsh

@@ -49,7 +49,17 @@ alias cget='curl -s https://getcomposer.org/installer | php'
 
 
 # Add Composer's global binaries to PATH, using Composer if available.
 # Add Composer's global binaries to PATH, using Composer if available.
 if (( $+commands[composer] )); then
 if (( $+commands[composer] )); then
-  export PATH=$PATH:$(composer global config bin-dir --absolute 2>/dev/null)
+    _retrieve_cache composer
+
+    if [[ -z $__composer_bin_dir ]]; then
+        __composer_bin_dir=$(composer global config bin-dir --absolute 2>/dev/null)
+        _store_cache composer __composer_bin_dir
+    fi
+
+    # Add Composer's global binaries to PATH
+    export PATH="$PATH:$__composer_bin_dir"
+
+    unset __composer_bin_dir
 else
 else
   [ -d $HOME/.composer/vendor/bin ] && export PATH=$PATH:$HOME/.composer/vendor/bin
   [ -d $HOME/.composer/vendor/bin ] && export PATH=$PATH:$HOME/.composer/vendor/bin
   [ -d $HOME/.config/composer/vendor/bin ] && export PATH=$PATH:$HOME/.config/composer/vendor/bin
   [ -d $HOME/.config/composer/vendor/bin ] && export PATH=$PATH:$HOME/.config/composer/vendor/bin