mirror of
https://github.com/rbenv/rbenv.git
synced 2024-12-28 20:55:38 +01:00
7b289bcee6
This is an attempt to work around the fact that Rubygems post_install hooks may happen multiple times per single `bundle install` and ideally we want `rbenv rehash` to run only once if new gems have been installed. However, due to Bundler parallelism using `fork` on platforms that support it, it's impossible for the child processes to communicate with the master process to signal it to run `rbenv rehash` in the end. This hooks into Bundler `install` command and runs `rbenv rehash` after all gems have finished installing, but only if the install location was system gems location and not a custom path (such as per-project `vendor/bundle`). This is limited because we can't tell whether any gems have been installed at all, let alone do those gems have executables. However it's better than having multiple `rbenv rehash` being run in parallel and outputting confusing error messages as a result. |
||
---|---|---|
.. | ||
gem-rehash | ||
gem-rehash.bash |