rvm 1.0.6 → 1.0.7

Sign up to get free protection for your applications and to get access to all the features.
@@ -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