Sorry to jump back in on this one, but I have been getting it pretty persistently since late last year.
My debug output looks almost identical to @SoCuul:
% RBENV_DEBUG=1 rbenv init - zsh
+(/opt/homebrew/bin/rbenv:23): '[' -z '' ']'
+(/opt/homebrew/bin/rbenv:24): RBENV_ROOT=/Users/adavis/.rbenv
+(/opt/homebrew/bin/rbenv:28): export RBENV_ROOT
+(/opt/homebrew/bin/rbenv:30): '[' -z '' ']'
+(/opt/homebrew/bin/rbenv:31): RBENV_DIR=/Users/adavis
+(/opt/homebrew/bin/rbenv:38): export RBENV_DIR
+(/opt/homebrew/bin/rbenv:40): '[' -n '' ']'
+(/opt/homebrew/bin/rbenv:40): export RBENV_ORIG_PATH=/opt/homebrew/sbin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Users/adavis/go/bin:/Applications/iTerm.app/Contents/Resources/utilities:/Users/adavis/bin:/Applications/RubyMine.app/Contents/MacOS:/Users/adavis/.local/bin
+(/opt/homebrew/bin/rbenv:40): RBENV_ORIG_PATH=/opt/homebrew/sbin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Users/adavis/go/bin:/Applications/iTerm.app/Contents/Resources/utilities:/Users/adavis/bin:/Applications/RubyMine.app/Contents/MacOS:/Users/adavis/.local/bin
+(/opt/homebrew/bin/rbenv:64): shopt -s nullglob
+(/opt/homebrew/bin/rbenv:67): rbenv_bin=/opt/homebrew/bin/rbenv
++(/opt/homebrew/bin/rbenv:68): canonicalize /opt/homebrew/bin/rbenv
++(/opt/homebrew/bin/rbenv:43): canonicalize(): local readlink resolved_path
+++(/opt/homebrew/bin/rbenv:44): canonicalize(): type -P greadlink
++(/opt/homebrew/bin/rbenv:44): canonicalize(): readlink=
+++(/opt/homebrew/bin/rbenv:44): canonicalize(): type -P readlink
++(/opt/homebrew/bin/rbenv:44): canonicalize(): readlink=/usr/bin/readlink
+++(/opt/homebrew/bin/rbenv:46): canonicalize(): /usr/bin/readlink -f /opt/homebrew/bin/rbenv
++(/opt/homebrew/bin/rbenv:46): canonicalize(): resolved_path=/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv
++(/opt/homebrew/bin/rbenv:47): canonicalize(): printf '%s\n' /opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv
++(/opt/homebrew/bin/rbenv:48): canonicalize(): return 0
+(/opt/homebrew/bin/rbenv:68): libexec_dir=/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv
+(/opt/homebrew/bin/rbenv:69): libexec_dir=/opt/homebrew/Cellar/rbenv/1.3.0/libexec
+(/opt/homebrew/bin/rbenv:78): export PATH=/opt/homebrew/Cellar/rbenv/1.3.0/libexec:/opt/homebrew/sbin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Users/adavis/go/bin:/Applications/iTerm.app/Contents/Resources/utilities:/Users/adavis/bin:/Applications/RubyMine.app/Contents/MacOS:/Users/adavis/.local/bin
+(/opt/homebrew/bin/rbenv:78): PATH=/opt/homebrew/Cellar/rbenv/1.3.0/libexec:/opt/homebrew/sbin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Users/adavis/go/bin:/Applications/iTerm.app/Contents/Resources/utilities:/Users/adavis/bin:/Applications/RubyMine.app/Contents/MacOS:/Users/adavis/.local/bin
+(/opt/homebrew/bin/rbenv:80): RBENV_HOOK_PATH=:/Users/adavis/.rbenv/rbenv.d
+(/opt/homebrew/bin/rbenv:81): '[' '!' /opt/homebrew/Cellar/rbenv/1.3.0/rbenv.d -ef /Users/adavis/.rbenv/rbenv.d ']'
+(/opt/homebrew/bin/rbenv:83): RBENV_HOOK_PATH=:/Users/adavis/.rbenv/rbenv.d:/opt/homebrew/Cellar/rbenv/1.3.0/rbenv.d
+(/opt/homebrew/bin/rbenv:85): RBENV_HOOK_PATH=:/Users/adavis/.rbenv/rbenv.d:/opt/homebrew/Cellar/rbenv/1.3.0/rbenv.d:/opt/homebrew/etc/rbenv.d:/etc/rbenv.d:/usr/lib/rbenv/hooks
+(/opt/homebrew/bin/rbenv:89): RBENV_HOOK_PATH=/Users/adavis/.rbenv/rbenv.d:/opt/homebrew/Cellar/rbenv/1.3.0/rbenv.d:/opt/homebrew/etc/rbenv.d:/etc/rbenv.d:/usr/lib/rbenv/hooks
+(/opt/homebrew/bin/rbenv:90): export RBENV_HOOK_PATH
+(/opt/homebrew/bin/rbenv:92): shopt -u nullglob
+(/opt/homebrew/bin/rbenv:95): command=init
+(/opt/homebrew/bin/rbenv:96): case "$command" in
++(/opt/homebrew/bin/rbenv:109): type -P rbenv-init
+(/opt/homebrew/bin/rbenv:109): command_path=/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init
+(/opt/homebrew/bin/rbenv:110): '[' -z /opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init ']'
+(/opt/homebrew/bin/rbenv:118): shift 1
+(/opt/homebrew/bin/rbenv:119): '[' - = --help ']'
+(/opt/homebrew/bin/rbenv:126): exec /opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init - zsh
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:22): '[' - = --complete ']'
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:32): print=
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:33): no_rehash=
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:34): shells=()
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:35): '[' 2 -gt 0 ']'
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:36): case "$1" in
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:38): print=1
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:47): shift
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:35): '[' 1 -gt 0 ']'
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:36): case "$1" in
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:44): shells+=("$1")
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:47): shift
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:35): '[' 0 -gt 0 ']'
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:50): '[' 1 -eq 0 ']'
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:59): root=/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:60): root=/opt/homebrew/Cellar/rbenv/1.3.0/libexec
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:61): root=/opt/homebrew/Cellar/rbenv/1.3.0
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:63): rbenv_in_path=true
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:64): '[' -n /opt/homebrew/sbin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Users/adavis/go/bin:/Applications/iTerm.app/Contents/Resources/utilities:/Users/adavis/bin:/Applications/RubyMine.app/Contents/MacOS:/Users/adavis/.local/bin ']'
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:65): PATH=/opt/homebrew/sbin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Users/adavis/go/bin:/Applications/iTerm.app/Contents/Resources/utilities:/Users/adavis/bin:/Applications/RubyMine.app/Contents/MacOS:/Users/adavis/.local/bin
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:65): type -P rbenv
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:68): '[' -z 1 ']'
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:147): mkdir -p /Users/adavis/.rbenv/shims /Users/adavis/.rbenv/versions
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:149): shell=zsh
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:150): case "$shell" in
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:158): '[' -n true ']'
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:160): printf 'export PATH="%s/shims:${PATH}"\n' /Users/adavis/.rbenv
export PATH="/Users/adavis/.rbenv/shims:${PATH}"
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:161): printf 'export RBENV_SHELL=%s\n' zsh
export RBENV_SHELL=zsh
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:163): completion=/opt/homebrew/Cellar/rbenv/1.3.0/completions/rbenv.zsh
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:164): '[' -r /opt/homebrew/Cellar/rbenv/1.3.0/completions/rbenv.zsh ']'
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:170): '[' -z '' ']'
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:171): echo 'command rbenv rehash 2>/dev/null'
command rbenv rehash 2>/dev/null
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:174): IFS='
'
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:174): read -d '' -r -a commands
++(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-init:174): rbenv-commands --sh
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-commands:15): '[' --sh = --complete ']'
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-commands:21): '[' --sh = --sh ']'
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-commands:22): sh=1
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-commands:23): shift
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-commands:29): IFS=:
+(/opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv-commands:29): read -d '' -r -a paths
HANGS HERE
The above command to list out the number of paths hangs for me as well.
Back to your first set of questions in this issue:
- Yes, near as I can tell, this is happening every time
- The bare, non-eval command hangs as does the non-eval with the --no-rehash option
- I moved .zshrc and .zprofile to .bak and the following completes without hanging:
adavis@AndyDavisMacBookPro-3 ~ % /opt/homebrew/Cellar/rbenv/1.3.0/libexec/rbenv
init - zsh
export PATH="/opt/homebrew/Cellar/rbenv/1.3.0/bin:${PATH}"
export PATH="/Users/adavis/.rbenv/shims:${PATH}"
export RBENV_SHELL=zsh
command rbenv rehash 2>/dev/null
rbenv() {
local command
command="${1:-}"
if [ "$#" -gt 0 ]; then
shift
fi
case "$command" in
rehash|shell)
eval "$(rbenv "sh-$command" "$@")";;
*)
command rbenv "$command" "$@";;
esac
}
adavis@AndyDavisMacBookPro-3 ~ %
I'll try digging in and see if there's something specific causing issues. I was running OMZ, but I thought I had that disabled and was still hanging.
Originally posted by @BiggerNoise in rbenv/rbenv#1593 (comment)
Sorry to jump back in on this one, but I have been getting it pretty persistently since late last year.
My debug output looks almost identical to @SoCuul:
HANGS HERE
The above command to list out the number of paths hangs for me as well.
Back to your first set of questions in this issue:
I'll try digging in and see if there's something specific causing issues. I was running OMZ, but I thought I had that disabled and was still hanging.
Originally posted by @BiggerNoise in rbenv/rbenv#1593 (comment)