Repository URL to install this package:
|
Version:
0.3.9-1 ▾
|
RUBIES if an exact match is found. (@havenwood)/.ruby-version was being ignored. (@havenwood)RUBYLIB, RUBYOPT, RUBYPATH and RUBYSHELL env variables.chruby-exec in the versions section.-V if --version did not work.RUBIES.
(@halostatue)chruby_auto can read .ruby-version files that do not end with
a new-line. (@hosiawak)$HOME, $RUBY_AUTO_VERSION.trap -p, $preexec_functions and $precmd_functions./opt/rubies and ~/.rubies.
This prevents nullglob errors under zsh and .rbx directories from being
added to RUBIES.GEM_PATH in chruby_reset if it has become empty.
Allows the RubyGems to use the default GEM_PATH.RUBIES[@] to prevent implicit word-splitting when listing
RUBIES.-V to --version in chruby. (@havenwood)RUBY_AUTO_VERSION when loaded. Forces sub-shells to re-detect any
.ruby-version file. (@KevinSjoberg)RUBY_AUTO_VERSION. Allows new windows in tmux to detect
the .ruby-version file.RUBY_AUTO_VERSION even if .ruby-version contains an unknown Ruby.
Prevents chruby from printing errors after every command.RUBY_VERSION_FILE was still being used. (@KevinSjoberg)chruby_use no longer echos the selected Ruby.chruby.sh for CHRUBY_VERSION..ruby-version files in order to detect
modifications, such as when switching between branches.PREFIX when auto-detecting /opt/rubies/*.GEM_ROOT if rubygems is not installed (Charlie Somerville).chruby_use now echos the select ruby and the version, only if the shell is
in interactive mode (Brian D. Burns).chruby_reset no longer accidentally removes /bin if GEM_HOME or
GEM_ROOT are empty (David Grayson).chruby now selects the last lexical match for the given ruby.Ensure that auto-switching works in non-interactive mode:
preexec_functions which runs in both interactive and
non-interactive sessions.trap DEBUG which runs before every command, in both interactive
and non-interactive mode. PROMPT_COMMAND only runs in interactive mode.Fixed a serious design flaw, where chruby_auto passed the contents of
.ruby-version as multiple arguments to the chruby function. Originally,
this allowed for .ruby-version files to specify additional RUBYOPT options
(ex: jruby --1.8). However, an attacker could craft a malicious
.ruby-version file that would require arbitrary code
(ex: 1.9.3 -r./evil.rb). The ./evil.rb file would then be required when
ruby is invoked by chruby_use in order to determine RUBY_ENGINE,
RUBY_VERSION, GEM_ROOT.
In order to prevent the abuse of this feature, chruby_auto now passes the
entire contents of .ruby-version as a first and only argument to the
chruby function.
If you have auto.sh enabled, it is recommended that you upgrade.
If you cannot upgrade, consider disabling auto.sh.
If you want to scan your entire system for malicious .ruby-version files:
find / -name .ruby-version 2>/dev/null | xargs -i{} grep -H " " {}
Thanks to David Grayson for reporting this flaw.
/bin/bash (Shannon Skipper).GEM_PATH in chruby_use, instead of
overriding the variable. This allows users to add common gem paths to
GEM_PATH in ~/.bashrc.chruby_reset.PROMPT_COMMAND=" " before checking if PROMPT_COMMAND is an
empty String. This appears to only happen on OSX Mountain Lion.CHRUBY_VERSION in the output.-v --version options to chruby and chruby-exec.scripts/bug_report.sh for collecting environment information
for bug reports.RUBIES to () to avoid double-loading chruby.sh.ruby using the absolute path to avoid shell aliases.
This fixes a bug caused by ohmyzsh aliases.RUBY_VERSION_FILE on initial load for tmux.; and whitespace from PROMPT_COMMAND before
appending ; chruby_auto.\x1b instead of \e for OSX.auto.sh from being loaded more than once.~/.bash_profile and ~/.zprofile.cp and mkdir instead of install in the Makefile.$SHELL with the -i option, so zsh will load shell configuration../configure options for homebrew.~/.rubies/*.bin/ruby exists and is executable before switching to a Ruby.export="" from accidentally being set under zsh.script/setup.sh from exiting if a brew install fails because all
packages are already installed./etc/profile.d/chruby.sh to only load under bash
and zsh.chruby-exec utility for use in crontab or with Continuous
Integration (CI)./opt/rubies/ or
~/.rubies/.share/chruby/auto.sh, which provides support for auto-switching
to Rubies specified in the .ruby-version
file.chruby_use, to allow forcibly
switching to the current Ruby, in case PATH or GEM_PATH become corrupted.share/chruby/chruby.sh.
This fixes switching issues for tmux users.RUBY environment variable to RUBY_ROOT to avoid breaking
the FileUtils#ruby method in rake.GEM_HOME, GEM_PATH, GEM_ROOT if running under root.Vagrantfile for testing chruby in various environments./opt/rubies/.scripts/setup.sh to manually install all Rubies and install any
dependencies via the System Package Manager.pkg/.Makefile to be compatible with BSD automake.PREFIX.test task.HOMEBREW_PREFIX.sha1 instead of md5 (deprecated).Makefile to be compatible with the dash shell.sed.typeset to declare RUBIES as an indexed Array.make install to work on OS X.chruby.sh into $PREFIX/share/chruby/.$RUBY and $RUBYOPT are different from the arguments passed to
chruby_use.$PATH in chruby_reset. (thanks mpapis)chruby_use.$RUBY_ENGINE, $RUBY_VERSION, $GEM_ROOT in chruby_use.$RUBY_PATH variable to $RUBY.$RUBY_ENGINE variable.$GEM_ROOT variable to Gem.default_dir.
This supports the custom RubyGems directory used by Rubinius.$RUBIES variable if it does not have a value.LICENSE.txt.ChangeLog.md.Makefile to generate proper tar archives.