When another function calls one of the bundler plugin's wrapper functions, the
command to run gets passed as an array instead of a space-separated string. That
works fine when the arguments are expanded alone, like `bundle exec $@`, but
something like `./bin/$@` will expand to something like `./bin/rake
./bin/--silent ./bin/--tasks`, which of course will explode. This was causing a
nasty interaction with the rake-fast plugin, and I'd be shocked if it wasn't
causing other problems.
The fix is to explicitly turn off the `RC_EXPAND_PARAM` option for that expansion.
See http://zsh.sourceforge.net/Doc/Release/Expansion.html#Parameter-Expansion
for more details.
This means that if you have, for example, `alias rs='rails server'`, you can
run `be rs` and have it expanded to `bundle exec rails server`.
Fixes#5818
Use the same scheme as Darwin - sysctl instead of nproc, which doesn't exist in FreeBSD
Closes#2545
Co-authored-by: Daniel Bye <dbye@users.noreply.github.com>
Since the `bower` plugin specifies a `bi` alias and `bundle` plugin
specifies a `bi` function, there is a name clash when using both
plugins, which results in the message "Can't 'bundle install' outside a
bundled project" when trying to execute `bower`.
This adresses #2486
Only check the bundler version when we call bi. This fixes two issues:
First, if there is no bundler available system-wide this will cause an
error each time zsh loads. Second, if new bundler is installed
system-wide but you change into an rbenv with an older version, the
alias will no longer work.
Clean command is undocumented (not included in
bundle help output), however that is very useful,
especially in RVM environment you can clean up
outdated gems in gemset.