summaryrefslogtreecommitdiff
path: root/plugins/composer
diff options
context:
space:
mode:
authorTuowen Zhao <ztuowen@gmail.com>2020-05-29 11:01:03 -0600
committerTuowen Zhao <ztuowen@gmail.com>2020-05-29 11:01:03 -0600
commita3be2e4084285d7625e63bfe4b951c58143e3c9c (patch)
treea018be4daef44a51b91477f38da514867659c7d6 /plugins/composer
parent191e14cc7f63c4525a0f66d571416faf9e91a185 (diff)
parent93cc3964e2d265ab0571298d69d2eed0a65d13f2 (diff)
downloadzsh-a3be2e4084285d7625e63bfe4b951c58143e3c9c.tar.gz
zsh-a3be2e4084285d7625e63bfe4b951c58143e3c9c.tar.bz2
zsh-a3be2e4084285d7625e63bfe4b951c58143e3c9c.zip
Merge branch 'master' of https://github.com/ohmyzsh/ohmyzsh
Diffstat (limited to 'plugins/composer')
-rw-r--r--plugins/composer/README.md32
-rw-r--r--plugins/composer/composer.plugin.zsh14
2 files changed, 30 insertions, 16 deletions
diff --git a/plugins/composer/README.md b/plugins/composer/README.md
index 85eef3cc7..7a5f7256e 100644
--- a/plugins/composer/README.md
+++ b/plugins/composer/README.md
@@ -12,18 +12,20 @@ plugins=(... composer)
## Aliases
-| Alias | Command | Description |
-| ------ | ---------------------------------------------- | -------------------------------------------------------------------------------------- |
-| `c` | `composer` | Starts composer |
-| `csu` | `composer self-update` | Updates composer to the latest version |
-| `cu` | `composer update` | Updates composer dependencies and `composer.lock` file |
-| `cr` | `composer require` | Adds new packages to `composer.json` |
-| `crm` | `composer remove` | Removes packages from `composer.json` |
-| `ci` | `composer install` | Resolves and installs dependencies from `composer.json` |
-| `ccp` | `composer create-project` | Create new project from an existing package |
-| `cdu` | `composer dump-autoload` | Updates the autoloader |
-| `cdo` | `composer dump-autoload --optimize-autoloader` | Converts PSR-0/4 autoloading to classmap for a faster autoloader (good for production) |
-| `cgu` | `composer global update` | Allows update command to run on COMPOSER_HOME directory |
-| `cgr` | `composer global require` | Allows require command to run on COMPOSER_HOME directory |
-| `cgrm` | `composer global remove` | Allows remove command to run on COMPOSER_HOME directory |
-| `cget` | `curl -s https://getcomposer.org/installer` | Installs composer in the current directory |
+| Alias | Command | Description |
+| ------ | ------------------------------------------- | --------------------------------------------------------------------------------------- |
+| `c` | `composer` | Starts composer |
+| `csu` | `composer self-update` | Updates composer to the latest version |
+| `cu` | `composer update` | Updates composer dependencies and `composer.lock` file |
+| `cr` | `composer require` | Adds new packages to `composer.json` |
+| `crm` | `composer remove` | Removes packages from `composer.json` |
+| `ci` | `composer install` | Resolves and installs dependencies from `composer.json` |
+| `ccp` | `composer create-project` | Create new project from an existing package |
+| `cdu` | `composer dump-autoload` | Updates the autoloader |
+| `cdo` | `composer dump-autoload -o` | Converts PSR-0/4 autoloading to classmap for a faster autoloader (good for production) |
+| `cgu` | `composer global update` | Allows update command to run on COMPOSER_HOME directory |
+| `cgr` | `composer global require` | Allows require command to run on COMPOSER_HOME directory |
+| `cgrm` | `composer global remove` | Allows remove command to run on COMPOSER_HOME directory |
+| `cget` | `curl -s https://getcomposer.org/installer` | Installs composer in the current directory |
+| `co` | `composer outdated` | Shows a list of installed packages with available updates |
+| `cod` | `composer outdated --direct` | Shows a list of installed packages with available updates which are direct dependencies |
diff --git a/plugins/composer/composer.plugin.zsh b/plugins/composer/composer.plugin.zsh
index 2c6044aef..330360cdd 100644
--- a/plugins/composer/composer.plugin.zsh
+++ b/plugins/composer/composer.plugin.zsh
@@ -43,13 +43,25 @@ alias cdo='composer dump-autoload -o'
alias cgu='composer global update'
alias cgr='composer global require'
alias cgrm='composer global remove'
+alias co='composer outdated'
+alias cod='composer outdated --direct'
# install composer in the current directory
alias cget='curl -s https://getcomposer.org/installer | php'
# Add Composer's global binaries to PATH, using Composer if available.
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
[ -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