rvm 1.0.6 → 1.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
1
  ---
2
2
  :major: 1
3
3
  :minor: 0
4
- :patch: 6
4
+ :patch: 7
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{rvm}
8
- s.version = "1.0.6"
8
+ s.version = "1.0.7"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Wayne E. Seguin"]
12
- s.date = %q{2010-09-10}
12
+ s.date = %q{2010-09-11}
13
13
  s.default_executable = %q{rvm-install}
14
14
  s.description = %q{Manages Ruby interpreter environments and switching between them.}
15
15
  s.email = %q{wayneeseguin@gmail.com}
@@ -2,7 +2,7 @@
2
2
 
3
3
  unset rvm_default_flag rvm_wrapper_name
4
4
 
5
- source "$rvm_scripts_path"/base
5
+ source "$rvm_path/scripts/base"
6
6
 
7
7
  usage() {
8
8
  printf "
@@ -26,15 +26,15 @@ alias_conflicts_with_ruby() {
26
26
  [[ "$1" == "default" && ! -L "$rvm_rubies_path/default" ]] && return 1
27
27
  # Open for suggestions to a better way of doing this...
28
28
  alias_check_result="$(
29
- \. \"$rvm_scripts_path/initialize\"
30
- \. \"$rvm_scripts_path/selector\"
29
+ \. \"$rvm_path/scripts/initialize\"
30
+ \. \"$rvm_path/scripts/selector\"
31
31
  export rvm_ruby_string=\"$1\"
32
32
  __rvm_ruby_string > /dev/null 2>&1
33
33
  echo "$?"
34
34
  )"
35
35
 
36
36
  if [[ "0" == "$alias_check_result" ]]; then
37
- "$rvm_scripts_path"/log "error" "\nYou have attempted to create an alias called '$1', which is recognized as a rvm ruby.\n"
37
+ "$rvm_path/scripts"/log "error" "\nYou have attempted to create an alias called '$1', which is recognized as a rvm ruby.\n"
38
38
  return 0
39
39
  fi
40
40
 
@@ -44,24 +44,27 @@ alias_conflicts_with_ruby() {
44
44
  }
45
45
 
46
46
  alias_show() {
47
+ local expanded_alias_name
48
+
47
49
  if [[ -z "$alias_name" ]]; then
48
- "$rvm_scripts_path"/log "error" "\nusage: 'rvm alias show [alias_name]'\n"
50
+ "$rvm_path/scripts"/log "error" "\nusage: 'rvm alias show [alias_name]'\n"
49
51
  result=1
50
52
  return
51
53
  fi
52
- expanded_alias_name="$("$rvm_scripts_path"/db "$rvm_config_path/alias" "$alias_name")"
54
+
55
+ expanded_alias_name="$("$rvm_path/scripts"/db "$rvm_config_path/alias" "$alias_name")"
56
+
53
57
  if [[ -z "$expanded_alias_name" ]]; then
54
- "$rvm_scripts_path"/log "error" "\nUnknown alias name: '$alias_name'\n"
58
+ "$rvm_path/scripts"/log "error" "\nUnknown alias name: '$alias_name'\n"
55
59
  result=1
56
60
  else
57
61
  result=0
58
62
  if [[ -n "$gemset_name" ]] ; then
59
- printf "${expanded_alias_name}${rvm_gemset_separator}${gemset_name}\n"
63
+ printf "${rvm_gemset_separator:-"@"}${rvm_gemset_separator:-"@"}${gemset_name}\n"
60
64
  else
61
65
  printf "$expanded_alias_name\n"
62
66
  fi
63
67
  fi
64
- unset expanded_alias_name
65
68
  }
66
69
 
67
70
  alias_delete() {
@@ -70,7 +73,8 @@ alias_delete() {
70
73
  for link in "$rvm_rubies_path/$alias_name" ; do
71
74
  if [[ -L "$link" ]] ; then rm -f $link ; fi
72
75
  done
73
- "$rvm_scripts_path"/db "$rvm_config_path/alias" "$alias_name" "delete"
76
+
77
+ "$rvm_path/scripts"/db "$rvm_config_path/alias" "$alias_name" "delete"
74
78
  }
75
79
 
76
80
  alias_create() {
@@ -84,7 +88,7 @@ alias_create() {
84
88
  fi
85
89
 
86
90
  if [[ -z "$rvm_environment_identifier" ]] || [[ -z "$alias_name" ]] ; then
87
- "$rvm_scripts_path"/log "error" "\nusage: 'rvm alias [alias_name] [ruby_string]'\n"
91
+ "$rvm_path/scripts"/log "error" "\nusage: 'rvm alias [alias_name] [ruby_string]'\n"
88
92
  result=1
89
93
  else
90
94
  if [[ -z "$rvm_alias" ]] ; then
@@ -97,21 +101,21 @@ alias_create() {
97
101
  rvm_ruby_string="$rvm_environment_identifier"
98
102
  fi
99
103
  if [[ -z "$rvm_ruby_string" ]]; then
100
- "$rvm_scripts_path"/log "error" "\nUnknown ruby string '$rvm_ruby_string' specified\n"
104
+ "$rvm_path/scripts"/log "error" "\nUnknown ruby string '$rvm_ruby_string' specified\n"
101
105
  result=1
102
106
  return
103
107
  fi
104
108
  final_environment_identifier="$(__rvm_environment_identifier)"
105
- "$rvm_scripts_path"/log "info" "Creating alias $alias_name for $final_environment_identifier."
109
+ "$rvm_path/scripts"/log "info" "Creating alias $alias_name for $final_environment_identifier."
106
110
  ln -nfs "$rvm_rubies_path/$rvm_ruby_string" "$rvm_rubies_path/$alias_name"
107
- "$rvm_scripts_path"/log "info" "Recording alias $alias_name for $final_environment_identifier."
108
- "$rvm_scripts_path"/db "$rvm_config_path/alias" "$alias_name" "$final_environment_identifier"
111
+ "$rvm_path/scripts"/log "info" "Recording alias $alias_name for $final_environment_identifier."
112
+ "$rvm_path/scripts"/db "$rvm_config_path/alias" "$alias_name" "$final_environment_identifier"
109
113
  else
110
114
  if [[ -d "$rvm_rubies_path/$alias_name" ]] ; then
111
- "$rvm_scripts_path"/log "error" "\n$rvm_rubies_path/$alias_name is taken and is *not* able to be an alias name.\n"
115
+ "$rvm_path/scripts"/log "error" "\n$rvm_rubies_path/$alias_name is taken and is *not* able to be an alias name.\n"
112
116
  result=1
113
117
  else
114
- "$rvm_scripts_path"/log "error" "\n$rvm_rubies_path/$alias_name is already aliased.\n"
118
+ "$rvm_path/scripts"/log "error" "\n$rvm_rubies_path/$alias_name is already aliased.\n"
115
119
  result=1
116
120
  fi
117
121
  fi
@@ -121,7 +125,7 @@ alias_create() {
121
125
  alias_list() {
122
126
  for item in $rvm_rubies_path/* ; do
123
127
  if [[ -L "$item" ]] ; then
124
- echo "$(basename "$item") => $("$rvm_scripts_path"/db "$rvm_config_path/alias" "$(basename "$item")")"
128
+ echo "$(basename "$item") => $("$rvm_path/scripts"/db "$rvm_config_path/alias" "$(basename "$item")")"
125
129
  fi
126
130
  done; unset item
127
131
  }
@@ -135,15 +139,15 @@ result=0
135
139
 
136
140
  if [[ ! -f "$rvm_config_path/alias" ]] ; then touch "$rvm_config_path/alias" ; fi
137
141
 
138
- if printf "$alias_name" | grep -q "$rvm_gemset_separator" ; then
139
- gemset_name="${alias_name/*${rvm_gemset_separator}/}"
140
- alias_name="${alias_name/${rvm_gemset_separator}*/}"
142
+ if printf "$alias_name" | grep -q "${rvm_gemset_separator:-"@"}" ; then
143
+ gemset_name="${alias_name/*${rvm_gemset_separator:-"@"}/}"
144
+ alias_name="${alias_name/${rvm_gemset_separator:-"@"}*/}"
141
145
  else
142
146
  gemset_name=""
143
147
  fi
144
148
 
145
149
  if [[ ! -z "$alias_name" ]] ; then
146
- rvm_alias="$("$rvm_scripts_path"/db "$rvm_config_path/alias" "$alias_name")"
150
+ rvm_alias="$("$rvm_path/scripts/db" "$rvm_config_path/alias" "$alias_name")"
147
151
  fi
148
152
 
149
153
  if [[ "$action" = "delete" ]] ; then
@@ -7,7 +7,7 @@
7
7
  # Use rvm_base_except="" to override the except.
8
8
  for script_name in initialize utility selector ; do
9
9
  if echo "${rvm_base_except:-""}" | \grep -vq "$script_name" ; then
10
- source "$rvm_scripts_path"/$script_name
10
+ source "$rvm_path/scripts/$script_name"
11
11
  fi
12
12
  done ; unset script_name rvm_base_except
13
13
 
@@ -1,25 +1,46 @@
1
1
  #!/usr/bin/env bash
2
2
  rvm_base_except="selector"
3
- source "$rvm_scripts_path/base"
3
+ source "$rvm_path/scripts/base"
4
4
 
5
5
  usage() {
6
- printf "Usage: 'rvm cleanup {all,archives,repos,sources,logs}'\n"
7
- printf " Cleans up the directory tree for the specified item.\n"
8
- exit 1
6
+ printf "
7
+
8
+ Usage:
9
+
10
+ rvm cleanup {all,archives,repos,sources,logs}
11
+
12
+ Description:
13
+
14
+ Cleans up the directory tree for the specified item.
15
+ "
16
+ return 0
9
17
  }
10
18
 
11
19
  cleanup() {
20
+ local cleanup_type current_path
21
+
12
22
  for cleanup_type in $1; do
23
+
13
24
  eval "current_path=\"\$rvm_${cleanup_type}_path\""
25
+
14
26
  if [[ -n "$current_path" && -d "$current_path" && "$current_path" != "/" ]]; then
15
- "$rvm_scripts_path"/log "info" "Cleaning up rvm directory '$current_path'"
27
+
28
+ "$rvm_path/scripts/log" "info" \
29
+ "Cleaning up rvm directory '$current_path'"
30
+
16
31
  rm -rf "$current_path"/* >/dev/null 2>&1
32
+
17
33
  fi
18
- done; unset cleanup_type current_path
34
+
35
+ done
36
+
37
+ return 0
19
38
  }
20
39
 
21
40
  # Exit when there is no argument.
22
- [[ -z "$1" ]] && usage
41
+ if [[ -z "${1:-""}" ]] ; then
42
+ usage
43
+ fi
23
44
 
24
45
  case "$1" in
25
46
  all) cleanup "archives repo src log" ;;
@@ -27,5 +48,8 @@ case "$1" in
27
48
  repos) cleanup "repo" ;;
28
49
  sources) cleanup "src" ;;
29
50
  logs) cleanup "log" ;;
30
- *) usage ;;
51
+ help) usage ;;
52
+ *) usage ; exit 1;;
31
53
  esac
54
+
55
+ exit $?
@@ -4,7 +4,7 @@ __rvm_usage() { \less "${rvm_path:-$HOME/.rvm}/README" ; }
4
4
 
5
5
  __rvm_run_script() {
6
6
  local rvm_script_name="${1:-"$rvm_action"}"
7
- eval "$rvm_scripts_path/$rvm_script_name $rvm_ruby_args"
7
+ eval "$rvm_path/scripts/$rvm_script_name $rvm_ruby_args"
8
8
  return $?
9
9
  }
10
10
 
@@ -66,7 +66,7 @@ __rvm_parse_args() {
66
66
  rvm_ruby_string="$rvm_token"
67
67
  rvm_ruby_strings="$rvm_token"
68
68
  rvm_action="${rvm_action:-use}"
69
- if "$rvm_scripts_path"/match "$next_token" "^[0-9]\.[0-9]" ; then
69
+ if "$rvm_path/scripts"/match "$next_token" "^[0-9]\.[0-9]" ; then
70
70
  rvm_ruby_version=$next_token
71
71
  if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
72
72
  fi
@@ -96,15 +96,15 @@ __rvm_parse_args() {
96
96
 
97
97
  if [[ -n "$next_token" ]] ; then rvm_gemset_name="$next_token" ; else rvm_gemset_name="" ; fi
98
98
 
99
- if echo $rvm_gemset_name | \grep -q $rvm_gemset_separator ; then
100
- rvm_ruby_string=$(echo $rvm_gemset_name | sed -e 's/\(.*\)'${rvm_gemset_separator}'.*/\1/')
101
- rvm_gemset_name=$(echo $rvm_gemset_name | sed -e 's/.*'${rvm_gemset_separator}'\(.*\)/\1/')
99
+ if echo $rvm_gemset_name | \grep -q ${rvm_gemset_separator:-"@"} ; then
100
+ rvm_ruby_string=$(echo $rvm_gemset_name | sed -e 's/\(.*\)'"${rvm_gemset_separator:-"@"}"'.*/\1/')
101
+ rvm_gemset_name=$(echo $rvm_gemset_name | sed -e 's/.*'"${rvm_gemset_separator:-"@"}"'\(.*\)/\1/')
102
102
 
103
103
  if [[ "${rvm_ruby_string:-""}" != "${rvm_gemset_name:-""}" ]] ; then
104
- rvm_ruby_string="$rvm_ruby_string${rvm_gemset_separator}$rvm_gemset_name"
104
+ rvm_ruby_string="$rvm_ruby_string${rvm_gemset_separator:-"@"}$rvm_gemset_name"
105
105
  fi
106
106
 
107
- rvm_ruby_gem_home="$rvm_ruby_gem_home${rvm_gemset_separator}$rvm_gemset_name"
107
+ rvm_ruby_gem_home="$rvm_ruby_gem_home${rvm_gemset_separator:-"@"}$rvm_gemset_name"
108
108
  fi
109
109
 
110
110
  elif [[ "delete" = "$next_token" ]] ; then
@@ -114,13 +114,15 @@ __rvm_parse_args() {
114
114
  rvm_gemset_name="$next_token"
115
115
  if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
116
116
 
117
- if echo "$rvm_gemset_name" | \grep -q "$rvm_gemset_separator" ; then
118
- rvm_ruby_string=$(echo "$rvm_gemset_name" | sed 's/\(.*\)'${rvm_gemset_separator}'.*/\1/')
119
- rvm_gemset_name=$(echo "$rvm_gemset_name" | sed 's/.*'${rvm_gemset_separator}'\(.*\)/\1/')
117
+ if echo "$rvm_gemset_name" | \grep -q "${rvm_gemset_separator:-"@"}" ; then
118
+ rvm_ruby_string=$(echo "$rvm_gemset_name" | sed 's/\(.*\)'"${rvm_gemset_separator:-"@"}"'.*/\1/')
119
+ rvm_gemset_name=$(echo "$rvm_gemset_name" | sed 's/.*'"${rvm_gemset_separator:-"@"}"'\(.*\)/\1/')
120
+
120
121
  if [[ "$rvm_ruby_string" != "$rvm_gemset_name" ]] ; then
121
- rvm_ruby_string="$rvm_ruby_string${rvm_gemset_separator}$rvm_gemset_name"
122
+ rvm_ruby_string="$rvm_ruby_string${rvm_gemset_separator:-"@"}$rvm_gemset_name"
122
123
  fi
123
- rvm_ruby_gem_home="$rvm_ruby_gem_home${rvm_gemset_separator}$rvm_gemset_name"
124
+
125
+ rvm_ruby_gem_home="$rvm_ruby_gem_home${rvm_gemset_separator:-"@"}$rvm_gemset_name"
124
126
  fi
125
127
 
126
128
  else
@@ -220,11 +222,11 @@ __rvm_parse_args() {
220
222
  rvm_parse_break=1
221
223
  fi
222
224
  else
223
- if "$rvm_scripts_path"/match "$next_token" "^-" ; then
225
+ if "$rvm_path/scripts"/match "$next_token" "^-" ; then
224
226
  unset rvm_ruby_strings
225
227
 
226
228
  else
227
- if "$rvm_scripts_path"/match "$next_token" "^[0-9]" ; then
229
+ if "$rvm_path/scripts"/match "$next_token" "^[0-9]" ; then
228
230
  rvm_ruby_strings="${1//,/ }"
229
231
  if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
230
232
  unset rvm_ruby_interpreter
@@ -343,7 +345,7 @@ __rvm_parse_args() {
343
345
  ;;
344
346
 
345
347
  --symlink)
346
- "$rvm_scripts_path/log" "warn" "--symlink has been removed, please see 'rvm wrapper'."
348
+ "$rvm_path/scripts/log" "warn" "--symlink has been removed, please see 'rvm wrapper'."
347
349
  if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
348
350
  ;;
349
351
 
@@ -357,24 +359,6 @@ __rvm_parse_args() {
357
359
  rvm_parse_break=1
358
360
  ;;
359
361
 
360
- -G)
361
- path_variable="rvm_gems_path"
362
- __rvm_set_path_variable "$next_token"
363
- if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
364
- ;;
365
-
366
- --source)
367
- path_variable="rvm_src_path"
368
- __rvm_set_path_variable "$next_token"
369
- if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
370
- ;;
371
-
372
- --archives)
373
- path_variable="rvm_archives_path"
374
- __rvm_set_path_variable "$next_token"
375
- if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
376
- ;;
377
-
378
362
  -h|--help|usage)
379
363
  rvm_action=help
380
364
  ;;
@@ -408,24 +392,21 @@ __rvm_parse_args() {
408
392
  if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
409
393
  ;;
410
394
 
411
- --install)
412
- rvm_install_on_use_flag=1
413
- ;;
414
-
415
395
  --trace|--debug)
416
396
  local option=""
417
397
 
418
398
  rvm_debug_flag=1
419
399
 
420
- for option in verbose errexit noclobber nounset ; do
400
+ for option in verbose noclobber nounset ; do
421
401
  set -o $option
422
402
  done
423
403
 
424
404
  if [[ -z "${ZSH_VERSION:-""}" ]] ; then
425
405
  set -o errtrace
426
- set -o pipefail
427
406
  fi
428
407
 
408
+ # errexit pipefail
409
+
429
410
  if [[ "$rvm_token" = "--trace" ]] ; then
430
411
 
431
412
  rvm_trace_flag=1
@@ -433,22 +414,24 @@ __rvm_parse_args() {
433
414
  set -o xtrace
434
415
 
435
416
  if [[ -z "${ZSH_VERSION:-""}" ]] ; then
436
- export PS4='+${BASH_SOURCE} : ${LINENO} : ${FUNCNAME[0]:+${FUNCNAME[0]}() : }'
417
+ export PS4='-[${BASH_SOURCE}] : ${LINENO} : ${FUNCNAME[0]:+${FUNCNAME[0]}() > }'
437
418
  fi
438
419
  fi
439
420
  ;;
440
421
 
441
- -q|--quiet) rvm_quiet_flag=1 ;;
442
-
443
- -s|--silent) rvm_silent_flag=1 ;;
444
422
 
445
423
  --proxy)
446
424
  rvm_proxy="$next_token"
447
425
  if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
448
426
  ;;
449
427
 
450
- --disable-llvm|--disable-jit) rvm_llvm_flag=0 ;;
451
- --enable-llvm|--enable-jit) rvm_llvm_flag=1 ;;
428
+ -q|--quiet) rvm_quiet_flag=1 ;;
429
+ -s|--silent) rvm_silent_flag=1 ;;
430
+ --disable-llvm|--disable-jit) rvm_llvm_flag=0 ;;
431
+ --enable-llvm|--enable-jit) rvm_llvm_flag=1 ;;
432
+ --install) rvm_install_on_use_flag=1 ;;
433
+ --pretty) rvm_pretty_print_flag=1 ;;
434
+
452
435
 
453
436
  reboot|damnit|wtf|argh|BOOM|boom|wth) $rvm_action="reboot" ;;
454
437
 
@@ -495,10 +478,9 @@ __rvm_parse_args() {
495
478
  fi
496
479
  ;;
497
480
 
498
- --with-*) rvm_configure_flags="${rvm_configure_flags:-""} $rvm_token" ;;
499
- --without-*) rvm_configure_flags="${rvm_configure_flags:-""} $rvm_token" ;;
500
- --enable-*) rvm_configure_flags="${rvm_configure_flags:-""} $rvm_token" ;;
501
- --disable-*) rvm_configure_flags="${rvm_configure_flags:-""} $rvm_token" ;;
481
+ --with-*|--without-*|--enable-*|--disable-*)
482
+ rvm_configure_flags="${rvm_configure_flags:-""} $rvm_token"
483
+ ;;
502
484
 
503
485
  -I|--include)
504
486
  if [[ -z "$next_token" ]] ; then
@@ -514,10 +496,12 @@ __rvm_parse_args() {
514
496
 
515
497
  *)
516
498
  if [[ -n "$rvm_token" ]] ; then
499
+
500
+
517
501
  if [[ "gemset" = "$rvm_action" ]] ; then
518
- if "$rvm_scripts_path/match" "$rvm_token" "^.+${rvm_gemset_separator}.+$" ; then
519
- rvm_gemset_name="${rvm_token/*${rvm_gemset_separator}/}"
520
- rvm_ruby_string="${rvm_token/${rvm_gemset_separator}*/}"
502
+ if "$rvm_path/scripts/match" "$rvm_token" "^.+${rvm_gemset_separator:-"@"}.+$" ; then
503
+ rvm_gemset_name="${rvm_token/*${rvm_gemset_separator:-"@"}/}"
504
+ rvm_ruby_string="${rvm_token/${rvm_gemset_separator:-"@"}*/}"
521
505
 
522
506
  elif echo "$rvm_token" | \grep -q '.gems$' ; then
523
507
  rvm_file_name="${rvm_token/.gems/}.gems" # Account for possible .gems.gems
@@ -533,32 +517,32 @@ __rvm_parse_args() {
533
517
  rvm_action="ruby" # Not sure if we really want to do this but we'll try it out.
534
518
  fi
535
519
 
536
- elif "$rvm_scripts_path/match" "$rvm_token" "^${rvm_gemset_separator}" ; then
520
+ elif "$rvm_path/scripts/match" "$rvm_token" "^${rvm_gemset_separator:-"@"}" ; then
537
521
  rvm_action="${rvm_action:-use}"
538
- rvm_gemset_name="${rvm_token/*${rvm_gemset_separator}/}"
522
+ rvm_gemset_name="${rvm_token/*${rvm_gemset_separator:-"@"}/}"
539
523
  rvm_ruby_string="${rvm_ruby_string:-""}"
540
- rvm_ruby_strings="${rvm_ruby_string}${rvm_gemset_separator}${rvm_gemset_name}"
524
+ rvm_ruby_strings="${rvm_ruby_string}${rvm_gemset_separator:-"@"}${rvm_gemset_name}"
541
525
 
542
- elif "$rvm_scripts_path/match" "$rvm_token" "^.+${rvm_gemset_separator}.+$" ; then
543
- gemset_name="${rvm_token/*${rvm_gemset_separator}/}"
526
+ elif "$rvm_path/scripts/match" "$rvm_token" "^.+${rvm_gemset_separator:-"@"}.+$" ; then
527
+ gemset_name="${rvm_token/*${rvm_gemset_separator:-"@"}/}"
544
528
  rvm_ruby_string="$rvm_token"
545
529
  rvm_ruby_strings="$rvm_token"
546
530
 
547
- elif "$rvm_scripts_path/match" "$rvm_token" "^.+\\+.+$" ; then
531
+ elif "$rvm_path/scripts/match" "$rvm_token" "^.+\\+.+$" ; then
548
532
  rvm_ruby_alias="${rvm_token/*+/}"
549
533
  rvm_ruby_string="${rvm_token/+*/}"
550
534
  rvm_ruby_strings="$rvm_ruby_string"
551
535
 
552
- elif "$rvm_scripts_path/match" "$rvm_token" "-" ; then
536
+ elif "$rvm_path/scripts/match" "$rvm_token" "-" ; then
553
537
  rvm_ruby_string="$rvm_token"
554
538
  rvm_ruby_strings="$rvm_token"
555
539
 
556
- elif "$rvm_scripts_path/match" "$rvm_token" "^[0-9].[0-9]" ; then
540
+ elif "$rvm_path/scripts/match" "$rvm_token" "^[0-9].[0-9]" ; then
557
541
  rvm_ruby_string="$rvm_token"
558
542
  rvm_ruby_strings="$rvm_token"
559
543
  rvm_action="${rvm_action:-use}"
560
544
 
561
- elif "$rvm_scripts_path/match" "$rvm_token" "^ree-" ; then
545
+ elif "$rvm_path/scripts/match" "$rvm_token" "^ree-" ; then
562
546
  rvm_ruby_string="$rvm_token"
563
547
  rvm_ruby_strings="$rvm_token"
564
548
  rvm_action="${rvm_action:-use}"
@@ -569,7 +553,7 @@ __rvm_parse_args() {
569
553
  rvm_action="${rvm_action:-use}"
570
554
 
571
555
  else
572
- if "$rvm_scripts_path/match" "$rvm_token" ".rb$" ; then # we have a specified ruby script
556
+ if "$rvm_path/scripts/match" "$rvm_token" ".rb$" ; then # we have a specified ruby script
573
557
  rvm_ruby_args="$rvm_token"
574
558
  rvm_ruby_file="$rvm_token"
575
559
  if [[ -z "${rvm_action:-""}" ]] ; then rvm_action="ruby" ; fi
@@ -595,14 +579,14 @@ __rvm_parse_args() {
595
579
  while [[ $# -gt 0 ]] ; do shift ; done
596
580
 
597
581
  if [[ -n "${rvm_error_message:-""}" ]] ; then
598
- "$rvm_scripts_path"/log "fail" "$rvm_error_message ( see: 'rvm usage' )"
582
+ "$rvm_path/scripts"/log "fail" "$rvm_error_message ( see: 'rvm usage' )"
599
583
  return 1
600
584
  fi
601
585
  }
602
586
 
603
587
  rvm() {
604
588
 
605
- local next_token
589
+ local next_token result
606
590
 
607
591
  __rvm_setup
608
592
 
@@ -611,7 +595,9 @@ rvm() {
611
595
  esac ; export rvm_interactive_flag
612
596
 
613
597
  if [[ -z "${ZSH_VERSION:-""}" ]] ; then
598
+
614
599
  trap '\rm -rf "$rvm_tmp_path/$$" >/dev/null 2>&1' 0 1 2 3 15
600
+
615
601
  fi
616
602
 
617
603
  # Check that this is the current version.
@@ -620,9 +606,12 @@ rvm() {
620
606
 
621
607
  if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
622
608
 
623
- if [[ "${rvm_version}" != "${disk_version}" && "reload" != "$next_token" ]]; then
609
+ if [[ "${rvm_version:-""}" != "${disk_version:-""}" && "reload" != "${next_token:-""}" ]] ; then
610
+
624
611
  printf "\nA RVM version ${disk_version} is installed yet ${rvm_version} is loaded.\n Please do one of the following:\n * 'rvm reload'\n * open a new shell\n * source your shell init scripts"
612
+
625
613
  return 1
614
+
626
615
  fi
627
616
 
628
617
  __rvm_cleanse_variables
@@ -635,52 +624,51 @@ rvm() {
635
624
 
636
625
  rvm_action="${rvm_action:-usage}"
637
626
 
638
- export BUNDLE_PATH GEM_HOME GEM_PATH rvm_ruby_string rvm_action rvm_bin_flag rvm_debug_flag rvm_delete_flag rvm_docs_type rvm_file_name rvm_gemset_name rvm_head_flag rvm_install_on_use_flag rvm_interactive_flag rvm_llvm_flag rvm_make_flags rvm_proxy rvm_remove_flag rvm_ruby_args rvm_configure_flags rvm_ruby_file rvm_ruby_gem_home rvm_ruby_interpreter rvm_ruby_name rvm_ruby_version rvm_system_flag rvm_trace_flag rvm_use_flag rvm_user_flag rvm_verbose_flag rvm_patch_names rvm_patch_original_pwd rvm_clang_flag rvm_install_arguments rvm_path rvm_rubies_path rvm_scripts_path rvm_archives_path rvm_src_path rvm_patches_path rvm_patches_path rvm_patchsets_path rvm_log_path rvm_bin_path rvm_gems_path rvm_config_path rvm_tmp_path rvm_hooks_path rvm_gems_cache_path rvm_gemset_separator rvm_ruby_aliases rvm_quiet_flag rvm_silent_flag
627
+ export BUNDLE_PATH GEM_HOME GEM_PATH rvm_ruby_string rvm_action rvm_bin_flag rvm_debug_flag rvm_delete_flag rvm_docs_type rvm_file_name rvm_gemset_name rvm_head_flag rvm_install_on_use_flag rvm_interactive_flag rvm_llvm_flag rvm_make_flags rvm_proxy rvm_remove_flag rvm_ruby_args rvm_configure_flags rvm_ruby_file rvm_ruby_gem_home rvm_ruby_interpreter rvm_ruby_name rvm_ruby_version rvm_system_flag rvm_trace_flag rvm_use_flag rvm_user_flag rvm_verbose_flag rvm_patch_names rvm_patch_original_pwd rvm_clang_flag rvm_install_arguments rvm_path rvm_rubies_path rvm_archives_path rvm_src_path rvm_log_path rvm_bin_path rvm_gems_path rvm_config_path rvm_tmp_path rvm_hooks_path rvm_gems_cache_path rvm_gemset_separator rvm_ruby_aliases rvm_quiet_flag rvm_silent_flag rvm_pretty_print_flag
639
628
 
640
629
  result=0
641
630
 
642
631
  case "$rvm_action" in
643
- use) __rvm_use ; result=$? ;;
644
- srcdir) __rvm_source_dir ; result=$? ;;
645
- strings) __rvm_strings ; result=$? ;;
646
- version) __rvm_version ; result=$? ;;
647
- reset) __rvm_reset ; result=$? ;;
648
- update) __rvm_update ; result=$? ;;
649
- reboot) __rvm_reboot ; result=$? ;;
650
- usage) __rvm_usage ; result=$? ;;
651
- benchmark) __rvm_benchmark ; result=$? ;;
652
- inspect) __rvm_inspect ; result=$? ;;
653
- implode|seppuku) __rvm_implode ; result=$? ;;
654
-
655
- list) "$rvm_scripts_path"/list $rvm_ruby_args ; result=$? ;;
632
+ use) __rvm_use ;;
633
+ srcdir) __rvm_source_dir ;;
634
+ strings) __rvm_strings ;;
635
+ version) __rvm_version ;;
636
+ reset) __rvm_reset ;;
637
+ update) __rvm_update ;;
638
+ reboot) __rvm_reboot ;;
639
+ usage) __rvm_usage ;;
640
+ benchmark) __rvm_benchmark ;;
641
+ inspect) __rvm_inspect ;;
642
+ implode|seppuku) __rvm_implode ;;
643
+
644
+ list) "$rvm_path/scripts"/list $rvm_ruby_args ;;
656
645
  # TODO: Make debug run in the current environment.
657
- debug) "$rvm_scripts_path/info" '' debug ; result=$? ;;
658
- help) "$rvm_scripts_path/help" $rvm_ruby_args ; result=$? ;;
659
- env) "$rvm_scripts_path/env" "$rvm_ruby_string" ; result=$? ;;
646
+ debug) "$rvm_path/scripts/info" '' debug ;;
647
+ help) "$rvm_path/scripts/help" $rvm_ruby_args ;;
648
+ env) "$rvm_path/scripts/env" "$rvm_ruby_string" ;;
660
649
  info)
661
650
  if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
662
651
  if [[ "$next_token" = "info" ]]; then shift; fi
663
- "$rvm_scripts_path/info" $rvm_ruby_args
664
- result=$?
652
+ "$rvm_path/scripts/info" $rvm_ruby_args
665
653
  ;;
666
654
 
667
655
  answer) __rvm_Answer_to_the_Ultimate_Question_of_Life_the_Universe_and_Everything ; result=42 ;;
668
656
  question) __rvm_ultimate_question ; result=42 ;;
669
657
 
670
658
  wrapper)
671
- "$rvm_scripts_path/wrapper" "$rvm_ruby_string" "$rvm_wrapper_name" $rvm_ruby_args
672
- result=$? ; unset rvm_wrapper_name
659
+ "$rvm_path/scripts/wrapper" "$rvm_ruby_string" "$rvm_wrapper_name" $rvm_ruby_args
660
+ unset rvm_wrapper_name
673
661
  ;;
674
662
 
675
663
  gemdir|gemhome|gempath)
676
- "$rvm_scripts_path/gemsets" "$rvm_action" ; result=$?
664
+ "$rvm_path/scripts/gemsets" "$rvm_action"
677
665
  ;;
678
666
 
679
667
  ruby|gem|rake|exec)
680
668
  old_rvm_ruby_string=$rvm_ruby_string
681
669
  unset rvm_ruby_string
682
670
  export rvm_ruby_strings
683
- "$rvm_scripts_path/set" "$rvm_action" $rvm_ruby_args
671
+ "$rvm_path/scripts/set" "$rvm_action" $rvm_ruby_args
684
672
  result=$?
685
673
  # Restore the state pre-sets.
686
674
  [[ -n "$old_rvm_ruby_string" ]] && rvm_ruby_string=$old_rvm_ruby_string
@@ -688,77 +676,78 @@ rvm() {
688
676
  ;;
689
677
 
690
678
  cleanup|tools|snapshot|disk-usage|repair|alias|docs|rubygems|migrate|upgrade)
691
- __rvm_run_script "$rvm_action" ; result=$?
679
+ __rvm_run_script "$rvm_action"
692
680
  ;;
693
681
 
694
- rvmrc) eval "__rvm_rvmrc_tools $rvm_ruby_args" ; result=$? ;;
682
+ rvmrc) eval "__rvm_rvmrc_tools $rvm_ruby_args" ;;
695
683
 
696
684
  gemset)
697
- #if "$rvm_scripts_path/match" $rvm_ruby_args use ; then
685
+ #if "$rvm_path/scripts/match" $rvm_ruby_args use ; then
698
686
  if [[ ${rvm_use_flag:-0} -eq 1 ]] ; then
699
- __rvm_gemset_select
700
- result=$? ; if [[ $result -eq 0 ]] ; then
701
- __rvm_gemset_use
702
- fi
687
+ __rvm_gemset_select && __rvm_gemset_use
703
688
  else
704
689
  export rvm_ruby_strings
705
690
 
706
- "$rvm_scripts_path/gemsets" $rvm_ruby_args ; result=$?
691
+ "$rvm_path/scripts/gemsets" $rvm_ruby_args ; result=$?
707
692
 
708
693
  rvm_ruby_strings=""
709
694
 
710
695
  # Clear the gemset.
711
696
  if [[ ${rvm_delete_flag:-0} -eq 1 ]] ; then
712
- gem_prefix="$(echo "${GEM_HOME:-""}" | sed 's/'${rvm_gemset_separator}'.*$//')"
697
+ gem_prefix="$(echo "${GEM_HOME:-""}" | sed 's/'${rvm_gemset_separator:-"@"}'.*$//')"
713
698
 
714
- if [[ "${GEM_HOME:-""}" = "${gem_prefix}${rvm_gemset_separator}${rvm_gemset_name}" ]] ; then
699
+ if [[ -n "${GEM_HOME:-""}" && "$GEM_HOME" = "${gem_prefix}${rvm_gemset_separator:-"@"}${rvm_gemset_name}" ]] ; then
715
700
  rvm_ruby_gem_home="$gem_prefix"
716
701
  GEM_HOME="$rvm_ruby_gem_home"
717
702
  BUNDLE_PATH="$rvm_ruby_gem_home"
718
- GEM_PATH="$rvm_ruby_gem_home/bin:$rvm_ruby_gem_home${rvm_gemset_separator}global/bin"
703
+ GEM_PATH="$rvm_ruby_gem_home/bin:$rvm_ruby_gem_home${rvm_gemset_separator:-"@"}global/bin"
719
704
  export rvm_ruby_gem_home GEM_HOME BUNDLE_PATH GEM_PATH
720
- fi ; unset gem_prefix
705
+ fi
706
+ unset gem_prefix
721
707
  fi
722
708
  fi
723
- result=$?
724
709
  ;;
725
710
 
726
711
  monitor)
727
712
  export rvm_ruby_strings rvm_ruby_string
728
- "$rvm_scripts_path"/monitor ; result=$?
713
+ "$rvm_path/scripts/monitor"
729
714
  ;;
730
715
 
731
- notes) "$rvm_scripts_path/notes" ; result=$? ;;
732
- reload) rvm_loaded_flag=0 ; rvm_reload_flag=1 ;;
733
- tests|specs) rvm_action="rake" ; __rvm_do ; result=$? ;;
734
- package) "$rvm_scripts_path/package" $rvm_ruby_args ; result=$? ;;
716
+ notes) "$rvm_path/scripts/notes" ;;
717
+ reload) rvm_reload_flag=1 ;;
718
+ tests|specs) rvm_action="rake" ; __rvm_do ;;
719
+ package) "$rvm_path/scripts/package" $rvm_ruby_args ;;
735
720
 
736
721
  fetch|install|uninstall|remove)
737
722
  if [[ -n "$rvm_ruby_strings" ]]; then
738
- "$rvm_scripts_path"/manage "$rvm_action" "$rvm_ruby_strings"
723
+ "$rvm_path/scripts"/manage "$rvm_action" "$rvm_ruby_strings"
739
724
  else
740
- "$rvm_scripts_path"/manage "$rvm_action"
725
+ "$rvm_path/scripts"/manage "$rvm_action"
741
726
  fi
742
- result=$?
743
727
  ;;
744
728
 
745
- error)
746
- result=1
747
- ;;
729
+ error) false ;;
748
730
 
749
731
  *)
750
732
  if [[ -n "${rvm_action:-""}" ]] ; then
751
- "$rvm_scripts_path/log" "fail" "unknown action '$rvm_action'"
733
+ "$rvm_path/scripts/log" "fail" "unknown action '$rvm_action'"
752
734
  else
753
735
  __rvm_usage
754
736
  fi
755
- result=1
737
+ false # result
756
738
  esac
757
739
 
740
+ result=${result:-$?}
741
+
758
742
  if [[ ${rvm_reload_flag:-0} -eq 1 ]] ; then
759
- source "$rvm_scripts_path/rvm"
743
+
744
+ rvm_loaded_flag=0
745
+
746
+ source "$rvm_path/scripts/rvm"
747
+
760
748
  # Note: Not using builtin on purpose. Done so we can trigger a reload the rvmrc.
761
749
  __rvm_project_rvmrc
750
+
762
751
  fi
763
752
 
764
753
  __rvm_teardown