rvm 1.0.4 → 1.0.5
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/VERSION.yml +1 -1
- data/rvm.gemspec +3 -2
- data/scripts/alias +49 -27
- data/scripts/base +21 -6
- data/scripts/cli +159 -84
- data/scripts/default +61 -0
- data/scripts/docs +17 -15
- data/scripts/env +7 -5
- data/scripts/fetch +10 -10
- data/scripts/gemsets +17 -8
- data/scripts/hook +1 -1
- data/scripts/info +73 -54
- data/scripts/initialize +2 -4
- data/scripts/list +12 -8
- data/scripts/log +1 -1
- data/scripts/manage +317 -264
- data/scripts/notes +84 -38
- data/scripts/package +50 -39
- data/scripts/patches +1 -1
- data/scripts/repair +10 -9
- data/scripts/rubygems +3 -3
- data/scripts/selector +45 -58
- data/scripts/set +28 -18
- data/scripts/snapshot +42 -37
- data/scripts/tools +2 -2
- data/scripts/utility +91 -99
- data/scripts/wrapper +11 -8
- metadata +5 -4
data/lib/VERSION.yml
CHANGED
data/rvm.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{rvm}
|
8
|
-
s.version = "1.0.
|
8
|
+
s.version = "1.0.5"
|
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-
|
12
|
+
s.date = %q{2010-09-07}
|
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}
|
@@ -108,6 +108,7 @@ Gem::Specification.new do |s|
|
|
108
108
|
"scripts/color",
|
109
109
|
"scripts/completion",
|
110
110
|
"scripts/db",
|
111
|
+
"scripts/default",
|
111
112
|
"scripts/disk-usage",
|
112
113
|
"scripts/docs",
|
113
114
|
"scripts/env",
|
data/scripts/alias
CHANGED
@@ -4,6 +4,23 @@ unset rvm_default_flag rvm_wrapper_name
|
|
4
4
|
|
5
5
|
source "$rvm_scripts_path"/base
|
6
6
|
|
7
|
+
usage() {
|
8
|
+
printf "
|
9
|
+
|
10
|
+
Usage:
|
11
|
+
|
12
|
+
rvm alias [action] [arguments]
|
13
|
+
|
14
|
+
Examples:
|
15
|
+
|
16
|
+
rvm alias create [alias_name] [ruby]
|
17
|
+
rvm alias delete [alias_name]
|
18
|
+
rvm alias show [alias_name]
|
19
|
+
rvm alias list
|
20
|
+
|
21
|
+
"
|
22
|
+
}
|
23
|
+
|
7
24
|
alias_conflicts_with_ruby() {
|
8
25
|
# If default exists, we should return true.
|
9
26
|
[[ "$1" == "default" && ! -L "$rvm_rubies_path/default" ]] && return 1
|
@@ -15,44 +32,48 @@ alias_conflicts_with_ruby() {
|
|
15
32
|
__rvm_ruby_string > /dev/null 2>&1
|
16
33
|
echo "$?"
|
17
34
|
)"
|
35
|
+
|
18
36
|
if [[ "0" == "$alias_check_result" ]]; then
|
19
|
-
"$rvm_scripts_path"/log "error" "
|
37
|
+
"$rvm_scripts_path"/log "error" "\nYou have attempted to create an alias called '$1', which is recognized as a rvm ruby.\n"
|
20
38
|
return 0
|
21
39
|
fi
|
40
|
+
|
22
41
|
return 1
|
42
|
+
|
23
43
|
unset alias_check_result
|
24
44
|
}
|
25
45
|
|
26
|
-
|
46
|
+
alias_show() {
|
27
47
|
if [[ -z "$alias_name" ]]; then
|
28
|
-
"$rvm_scripts_path"/log "error" "
|
48
|
+
"$rvm_scripts_path"/log "error" "\nusage: 'rvm alias show [alias_name]'\n"
|
29
49
|
result=1
|
30
50
|
return
|
31
51
|
fi
|
32
52
|
expanded_alias_name="$("$rvm_scripts_path"/db "$rvm_config_path/alias" "$alias_name")"
|
33
53
|
if [[ -z "$expanded_alias_name" ]]; then
|
34
|
-
"$rvm_scripts_path"/log "error" "
|
54
|
+
"$rvm_scripts_path"/log "error" "\nUnknown alias name: '$alias_name'\n"
|
35
55
|
result=1
|
36
56
|
else
|
37
57
|
result=0
|
38
58
|
if [[ -n "$gemset_name" ]] ; then
|
39
|
-
printf "${expanded_alias_name}${rvm_gemset_separator}${gemset_name}"
|
59
|
+
printf "${expanded_alias_name}${rvm_gemset_separator}${gemset_name}\n"
|
40
60
|
else
|
41
|
-
printf "$expanded_alias_name"
|
61
|
+
printf "$expanded_alias_name\n"
|
42
62
|
fi
|
43
63
|
fi
|
44
64
|
unset expanded_alias_name
|
45
65
|
}
|
46
66
|
|
47
|
-
|
67
|
+
alias_delete() {
|
48
68
|
echo "Deleting alias: $alias_name"
|
69
|
+
|
49
70
|
for link in "$rvm_rubies_path/$alias_name" ; do
|
50
71
|
if [[ -L "$link" ]] ; then rm -f $link ; fi
|
51
72
|
done
|
52
73
|
"$rvm_scripts_path"/db "$rvm_config_path/alias" "$alias_name" "delete"
|
53
74
|
}
|
54
75
|
|
55
|
-
|
76
|
+
alias_create() {
|
56
77
|
rvm_environment_identifier="${rvm_environment_identifier:-""}"
|
57
78
|
alias_name="${alias_name:-""}"
|
58
79
|
rvm_ruby_string="${rvm_ruby_string:-""}"
|
@@ -63,7 +84,7 @@ create_alias() {
|
|
63
84
|
fi
|
64
85
|
|
65
86
|
if [[ -z "$rvm_environment_identifier" ]] || [[ -z "$alias_name" ]] ; then
|
66
|
-
"$rvm_scripts_path"/log "error" "
|
87
|
+
"$rvm_scripts_path"/log "error" "\nusage: 'rvm alias [alias_name] [ruby_string]'\n"
|
67
88
|
result=1
|
68
89
|
else
|
69
90
|
if [[ -z "$rvm_alias" ]] ; then
|
@@ -76,7 +97,7 @@ create_alias() {
|
|
76
97
|
rvm_ruby_string="$rvm_environment_identifier"
|
77
98
|
fi
|
78
99
|
if [[ -z "$rvm_ruby_string" ]]; then
|
79
|
-
"$rvm_scripts_path"/log "error" "
|
100
|
+
"$rvm_scripts_path"/log "error" "\nUnknown ruby string '$rvm_ruby_string' specified\n"
|
80
101
|
result=1
|
81
102
|
return
|
82
103
|
fi
|
@@ -87,10 +108,10 @@ create_alias() {
|
|
87
108
|
"$rvm_scripts_path"/db "$rvm_config_path/alias" "$alias_name" "$final_environment_identifier"
|
88
109
|
else
|
89
110
|
if [[ -d "$rvm_rubies_path/$alias_name" ]] ; then
|
90
|
-
"$rvm_scripts_path"/log "error" "$rvm_rubies_path/$alias_name is taken and is *not* able to be an alias name
|
111
|
+
"$rvm_scripts_path"/log "error" "\n$rvm_rubies_path/$alias_name is taken and is *not* able to be an alias name.\n"
|
91
112
|
result=1
|
92
113
|
else
|
93
|
-
"$rvm_scripts_path"/log "error" "$rvm_rubies_path/$alias_name is already aliased
|
114
|
+
"$rvm_scripts_path"/log "error" "\n$rvm_rubies_path/$alias_name is already aliased.\n"
|
94
115
|
result=1
|
95
116
|
fi
|
96
117
|
fi
|
@@ -106,37 +127,38 @@ alias_list() {
|
|
106
127
|
}
|
107
128
|
|
108
129
|
args=($*)
|
109
|
-
action="${args[0]}"
|
110
|
-
alias_name="${args[1]}"
|
111
|
-
rvm_environment_identifier="${args[2]}"
|
130
|
+
action="${args[0]:-""}"
|
131
|
+
alias_name="${args[1]:-""}"
|
132
|
+
rvm_environment_identifier="${args[2]:-""}"
|
112
133
|
args="$(echo ${args[@]:3}) " # Strip trailing / leading / extra spacing.
|
134
|
+
result=0
|
113
135
|
|
114
136
|
if [[ ! -f "$rvm_config_path/alias" ]] ; then touch "$rvm_config_path/alias" ; fi
|
137
|
+
|
115
138
|
if printf "$alias_name" | grep -q "$rvm_gemset_separator" ; then
|
116
139
|
gemset_name="${alias_name/*${rvm_gemset_separator}/}"
|
117
140
|
alias_name="${alias_name/${rvm_gemset_separator}*/}"
|
141
|
+
else
|
142
|
+
gemset_name=""
|
118
143
|
fi
|
144
|
+
|
119
145
|
if [[ ! -z "$alias_name" ]] ; then
|
120
146
|
rvm_alias="$("$rvm_scripts_path"/db "$rvm_config_path/alias" "$alias_name")"
|
121
147
|
fi
|
122
148
|
|
123
|
-
# CLI API:
|
124
|
-
# rvm alias create [alias_name] [ruby]
|
125
|
-
# rvm alias delete [alias_name]
|
126
|
-
# rvm alias show [alias_name]
|
127
|
-
# rvm alias list
|
128
149
|
if [[ "$action" = "delete" ]] ; then
|
129
|
-
|
150
|
+
alias_delete
|
130
151
|
elif [[ "$action" = "create" ]] ; then
|
131
|
-
|
152
|
+
alias_create
|
132
153
|
elif [[ "$action" = "list" ]] ; then
|
133
154
|
alias_list
|
134
155
|
elif [[ "$action" = "show" ]]; then
|
135
|
-
|
156
|
+
alias_show
|
157
|
+
elif [[ "$action" = "help" ]]; then
|
158
|
+
usage
|
136
159
|
else
|
137
|
-
|
160
|
+
usage
|
161
|
+
exit 1
|
138
162
|
fi
|
139
163
|
|
140
|
-
|
141
|
-
|
142
|
-
exit $result
|
164
|
+
exit $?
|
data/scripts/base
CHANGED
@@ -1,14 +1,29 @@
|
|
1
|
+
#!/usr/bin/env bash
|
2
|
+
|
1
3
|
# Base is a collection general files + commonely included
|
2
4
|
# setup functions.
|
3
5
|
|
4
6
|
# Load the general scripts.
|
5
7
|
# Use rvm_base_except="" to override the except.
|
6
|
-
for script_name in initialize utility selector; do
|
7
|
-
if echo "$rvm_base_except" | \grep -vq "$script_name" ; then
|
8
|
+
for script_name in initialize utility selector ; do
|
9
|
+
if echo "${rvm_base_except:-""}" | \grep -vq "$script_name" ; then
|
8
10
|
source "$rvm_scripts_path"/$script_name
|
9
11
|
fi
|
10
|
-
done; unset script_name rvm_base_except
|
12
|
+
done ; unset script_name rvm_base_except
|
13
|
+
|
14
|
+
#for option in errexit noclobber nounset ; do
|
15
|
+
# set -o $option
|
16
|
+
#done
|
17
|
+
|
18
|
+
#if [[ -z "${ZSH_VERSION:-""}" ]] ; then
|
19
|
+
# set -o errtrace
|
20
|
+
# set -o pipefail
|
21
|
+
#fi
|
22
|
+
|
23
|
+
if [[ ${rvm_trace_flag:-0} -gt 0 ]]; then
|
24
|
+
export rvm_trace_flag=1
|
25
|
+
set -o xtrace
|
26
|
+
fi
|
11
27
|
|
12
|
-
#
|
13
|
-
|
14
|
-
__rvm_cleanup_temp_on_exit
|
28
|
+
# Cleanup tmp on exit.
|
29
|
+
trap "__rvm_cleanup_temp_for '$$'" 0 1 2 3 15
|
data/scripts/cli
CHANGED
@@ -22,10 +22,9 @@ __rvm_parse_args() {
|
|
22
22
|
local rvm_parse_break=0
|
23
23
|
local rvm_error_message=""
|
24
24
|
|
25
|
-
while [[
|
26
|
-
rvm_token="$next_token"
|
27
|
-
|
28
|
-
if [[ $# -gt 0 ]] ; then next_token="$1" ; else next_token="" ; fi
|
25
|
+
while [[ -n "$next_token" ]] ; do
|
26
|
+
rvm_token="$next_token"
|
27
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
29
28
|
|
30
29
|
case "$rvm_token" in
|
31
30
|
fetch|version|srcdir|reset|debug|reload|update|monitor|notes|implode|seppuku|question|answer|env)
|
@@ -37,14 +36,16 @@ __rvm_parse_args() {
|
|
37
36
|
if [[ "$next_token" = "--only-path" ]]; then
|
38
37
|
shift; rvm_only_path_flag=1
|
39
38
|
fi
|
40
|
-
rvm_ruby_args="$*"
|
39
|
+
rvm_ruby_args="$next_token $*"
|
41
40
|
rvm_parse_break=1
|
42
41
|
;;
|
43
42
|
|
44
43
|
use)
|
45
44
|
rvm_action="$rvm_token"
|
46
45
|
rvm_verbose_flag=1
|
47
|
-
if [[ "ruby" = "$next_token" ]] ; then
|
46
|
+
if [[ "ruby" = "$next_token" ]] ; then
|
47
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
48
|
+
fi
|
48
49
|
;;
|
49
50
|
|
50
51
|
install|uninstall)
|
@@ -65,7 +66,14 @@ __rvm_parse_args() {
|
|
65
66
|
rvm_ruby_string="$rvm_token"
|
66
67
|
rvm_ruby_strings="$rvm_token"
|
67
68
|
rvm_action="${rvm_action:-use}"
|
68
|
-
if "$rvm_scripts_path"/match "$next_token" "^[0-9]\.[0-9]" ; then
|
69
|
+
if "$rvm_scripts_path"/match "$next_token" "^[0-9]\.[0-9]" ; then
|
70
|
+
rvm_ruby_version=$next_token
|
71
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
72
|
+
fi
|
73
|
+
;;
|
74
|
+
|
75
|
+
default)
|
76
|
+
|
69
77
|
;;
|
70
78
|
|
71
79
|
gemset)
|
@@ -82,11 +90,11 @@ __rvm_parse_args() {
|
|
82
90
|
|
83
91
|
elif [[ "use" = "$next_token" ]] ; then
|
84
92
|
rvm_use_flag=1
|
85
|
-
rvm_ruby_args="$@"
|
93
|
+
rvm_ruby_args="$next_token $@"
|
86
94
|
rvm_gemset_name="$next_token"
|
87
|
-
shift
|
95
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
88
96
|
|
89
|
-
if [[
|
97
|
+
if [[ -n "$next_token" ]] ; then rvm_gemset_name="$next_token" ; else rvm_gemset_name="" ; fi
|
90
98
|
|
91
99
|
if echo $rvm_gemset_name | \grep -q $rvm_gemset_separator ; then
|
92
100
|
rvm_ruby_string=$(echo $rvm_gemset_name | sed -e 's/\(.*\)'${rvm_gemset_separator}'.*/\1/')
|
@@ -101,8 +109,11 @@ __rvm_parse_args() {
|
|
101
109
|
|
102
110
|
elif [[ "delete" = "$next_token" ]] ; then
|
103
111
|
rvm_delete_flag=1
|
104
|
-
rvm_ruby_args="$@"
|
105
|
-
|
112
|
+
rvm_ruby_args="$next_token $@"
|
113
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
114
|
+
rvm_gemset_name="$next_token"
|
115
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
116
|
+
|
106
117
|
if echo "$rvm_gemset_name" | \grep -q "$rvm_gemset_separator" ; then
|
107
118
|
rvm_ruby_string=$(echo "$rvm_gemset_name" | sed 's/\(.*\)'${rvm_gemset_separator}'.*/\1/')
|
108
119
|
rvm_gemset_name=$(echo "$rvm_gemset_name" | sed 's/.*'${rvm_gemset_separator}'\(.*\)/\1/')
|
@@ -115,51 +126,60 @@ __rvm_parse_args() {
|
|
115
126
|
else
|
116
127
|
rvm_gemset_name="${rvm_gemset_name:-""}"
|
117
128
|
if [[ "$rvm_ruby_string" != "$rvm_gemset_name" ]] ; then __rvm_ruby_string ; fi
|
118
|
-
rvm_ruby_args="$@"
|
129
|
+
rvm_ruby_args="$next_token $@"
|
119
130
|
fi
|
131
|
+
|
120
132
|
rvm_parse_break=1
|
121
133
|
;;
|
122
134
|
|
123
135
|
gemdir|gempath|gemhome)
|
124
136
|
rvm_action=$rvm_token
|
125
137
|
rvm_gemdir_flag=1
|
126
|
-
|
127
|
-
if [[ "
|
138
|
+
|
139
|
+
if [[ "system" = "$next_token" ]] ; then
|
140
|
+
rvm_system_flag=1
|
141
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
142
|
+
fi
|
143
|
+
|
144
|
+
if [[ "user" = "$next_token" ]] ; then
|
145
|
+
rvm_user_flag=1
|
146
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
147
|
+
fi
|
128
148
|
;;
|
129
149
|
|
130
150
|
inspect|list|info|strings)
|
131
151
|
rvm_action="$rvm_token"
|
132
|
-
rvm_ruby_args="$@"
|
152
|
+
rvm_ruby_args="$next_token $@"
|
133
153
|
rvm_parse_break=1
|
134
154
|
;;
|
135
155
|
|
136
156
|
-S)
|
137
157
|
rvm_action="ruby"
|
138
|
-
rvm_ruby_args="$rvm_token $(__rvm_quote_args "$@")"
|
158
|
+
rvm_ruby_args="$rvm_token $next_token $(__rvm_quote_args "$@")"
|
139
159
|
rvm_parse_break=1
|
140
160
|
;;
|
141
161
|
|
142
162
|
-e)
|
143
163
|
rvm_action="ruby"
|
144
|
-
rvm_ruby_args="$rvm_token $(__rvm_quote_args "$@")"
|
164
|
+
rvm_ruby_args="$rvm_token $next_token $(__rvm_quote_args "$@")"
|
145
165
|
rvm_parse_break=1
|
146
166
|
;;
|
147
167
|
|
148
168
|
docs|alias|rubygems|exec|cleanup|tools|disk-usage|snapshot|repair|migrate|upgrade)
|
149
169
|
rvm_action="$rvm_token"
|
150
|
-
rvm_ruby_args="$(__rvm_quote_args "$@")"
|
170
|
+
rvm_ruby_args="$next_token $(__rvm_quote_args "$@")"
|
151
171
|
rvm_parse_break=1
|
152
172
|
;;
|
153
173
|
|
154
174
|
load-rvmrc)
|
155
175
|
rvm_action="rvmrc"
|
156
|
-
rvm_ruby_args="'load' $(__rvm_quote_args "$@")"
|
176
|
+
rvm_ruby_args="'load' $next_token $(__rvm_quote_args "$@")"
|
157
177
|
rvm_parse_break=1
|
158
178
|
;;
|
159
179
|
|
160
180
|
rvmrc)
|
161
181
|
rvm_action="rvmrc"
|
162
|
-
rvm_ruby_args="$(__rvm_quote_args "$@")"
|
182
|
+
rvm_ruby_args="$next_token $(__rvm_quote_args "$@")"
|
163
183
|
rvm_parse_break=1
|
164
184
|
;;
|
165
185
|
|
@@ -187,16 +207,16 @@ __rvm_parse_args() {
|
|
187
207
|
|
188
208
|
elif [[ "-S" = "$next_token" ]] ; then
|
189
209
|
rvm_action="ruby"
|
190
|
-
rvm_ruby_args="$flag $(__rvm_quote_args "$@")"
|
210
|
+
rvm_ruby_args="$flag $next_token $(__rvm_quote_args "$@")"
|
191
211
|
rvm_parse_break=1
|
192
212
|
|
193
213
|
elif [[ "-e" = "$next_token" ]] ; then
|
194
214
|
rvm_action="ruby"
|
195
|
-
rvm_ruby_args="$flag $(__rvm_quote_args "$@")"
|
215
|
+
rvm_ruby_args="$flag $next_token $(__rvm_quote_args "$@")"
|
196
216
|
rvm_parse_break=1
|
197
217
|
|
198
218
|
else
|
199
|
-
rvm_ruby_args="$
|
219
|
+
rvm_ruby_args="$next_token $@"
|
200
220
|
rvm_parse_break=1
|
201
221
|
fi
|
202
222
|
else
|
@@ -205,14 +225,15 @@ __rvm_parse_args() {
|
|
205
225
|
|
206
226
|
else
|
207
227
|
if "$rvm_scripts_path"/match "$next_token" "^[0-9]" ; then
|
208
|
-
rvm_ruby_strings="${1//,/ }"
|
228
|
+
rvm_ruby_strings="${1//,/ }"
|
229
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
209
230
|
unset rvm_ruby_interpreter
|
210
231
|
|
211
232
|
else
|
212
233
|
if [[ "ruby rbx jruby macruby ree rubinius maglev mput shyouhei ironruby" =~ $next_token ]] ; then
|
213
234
|
rvm_ruby_strings=$next_token
|
214
235
|
rvm_ruby_interpreter=$next_token
|
215
|
-
shift
|
236
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
216
237
|
else
|
217
238
|
unset rvm_ruby_interpreter rvm_ruby_strings
|
218
239
|
fi
|
@@ -227,7 +248,7 @@ __rvm_parse_args() {
|
|
227
248
|
|
228
249
|
specs|tests)
|
229
250
|
rvm_action="rake"
|
230
|
-
rvm_ruby_args="$(echo $rvm_token | sed -e 's/s$//')"
|
251
|
+
rvm_ruby_args="$(echo "$rvm_token" | sed -e 's/s$//')"
|
231
252
|
;;
|
232
253
|
|
233
254
|
-v|--version)
|
@@ -235,7 +256,7 @@ __rvm_parse_args() {
|
|
235
256
|
rvm_action="version"
|
236
257
|
else
|
237
258
|
rvm_ruby_version="$next_token"
|
238
|
-
shift
|
259
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
239
260
|
fi
|
240
261
|
;;
|
241
262
|
|
@@ -245,7 +266,9 @@ __rvm_parse_args() {
|
|
245
266
|
|
246
267
|
--ree-options)
|
247
268
|
if [[ ! -z "$next_token" ]] ; then
|
248
|
-
export rvm_ree_options="${1//,/ }"
|
269
|
+
export rvm_ree_options="${1//,/ }"
|
270
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
271
|
+
|
249
272
|
else
|
250
273
|
rvm_action="error"
|
251
274
|
rvm_error_message="--ree-options *must* be followed by... well... options."
|
@@ -253,7 +276,8 @@ __rvm_parse_args() {
|
|
253
276
|
;;
|
254
277
|
|
255
278
|
--patches|--patch)
|
256
|
-
rvm_patch_names="$next_token ${rvm_patch_names:-""}"
|
279
|
+
rvm_patch_names="$next_token ${rvm_patch_names:-""}"
|
280
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
257
281
|
rvm_patch_original_pwd="$PWD"
|
258
282
|
;;
|
259
283
|
|
@@ -263,7 +287,8 @@ __rvm_parse_args() {
|
|
263
287
|
if [[ "update" = "${rvm_action:-""}" ]] ; then
|
264
288
|
rvm_bin_flag=1
|
265
289
|
else
|
266
|
-
rvm_bin_path="$next_token"
|
290
|
+
rvm_bin_path="$next_token"
|
291
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
267
292
|
fi
|
268
293
|
;;
|
269
294
|
|
@@ -273,7 +298,7 @@ __rvm_parse_args() {
|
|
273
298
|
rvm_error_message="-r|--require *must* be followed by a library name."
|
274
299
|
else
|
275
300
|
rvm_ruby_require="$rvm_ruby_require -r$next_token"
|
276
|
-
shift
|
301
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
277
302
|
fi
|
278
303
|
;;
|
279
304
|
|
@@ -285,7 +310,7 @@ __rvm_parse_args() {
|
|
285
310
|
-f|--file)
|
286
311
|
rvm_action="ruby"
|
287
312
|
rvm_ruby_file="$next_token"
|
288
|
-
shift
|
313
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
289
314
|
;;
|
290
315
|
|
291
316
|
system|default)
|
@@ -297,7 +322,7 @@ __rvm_parse_args() {
|
|
297
322
|
|
298
323
|
help)
|
299
324
|
rvm_action="$rvm_token"
|
300
|
-
rvm_ruby_args="$@"
|
325
|
+
rvm_ruby_args="$next_token $@"
|
301
326
|
rvm_parse_break=1
|
302
327
|
;;
|
303
328
|
|
@@ -308,59 +333,110 @@ __rvm_parse_args() {
|
|
308
333
|
--alias)
|
309
334
|
if [[ -n "$next_token" ]]; then
|
310
335
|
rvm_ruby_aliases="$(echo "${rvm_ruby_aliases//,/ } ${1//,/ }" | __rvm_strip)"
|
311
|
-
shift
|
336
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
312
337
|
fi
|
313
338
|
;;
|
314
339
|
|
315
340
|
--symlink)
|
316
341
|
"$rvm_scripts_path/log" "warn" "--symlink has been removed, please see 'rvm wrapper'."
|
317
|
-
shift
|
342
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
318
343
|
;;
|
319
344
|
|
320
345
|
wrapper)
|
321
346
|
rvm_action="$rvm_token"
|
322
347
|
rvm_ruby_string="$next_token" ;
|
323
|
-
[[ -
|
348
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
324
349
|
rvm_wrapper_name="$next_token"
|
325
|
-
[[ -
|
326
|
-
rvm_ruby_args="$@" # list of binaries, or none
|
350
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
351
|
+
rvm_ruby_args="$next_token $@" # list of binaries, or none
|
327
352
|
rvm_parse_break=1
|
328
353
|
;;
|
329
354
|
|
330
|
-
-G)
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
--
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
--
|
355
|
+
-G)
|
356
|
+
path_variable="rvm_gems_path"
|
357
|
+
__rvm_set_path_variable "$next_token"
|
358
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
359
|
+
;;
|
360
|
+
|
361
|
+
--source)
|
362
|
+
path_variable="rvm_src_path"
|
363
|
+
__rvm_set_path_variable "$next_token"
|
364
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
365
|
+
;;
|
366
|
+
|
367
|
+
--archives)
|
368
|
+
path_variable="rvm_archives_path"
|
369
|
+
__rvm_set_path_variable "$next_token"
|
370
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
371
|
+
;;
|
372
|
+
|
373
|
+
-h|--help|usage)
|
374
|
+
rvm_action=help
|
375
|
+
;;
|
376
|
+
|
377
|
+
--make)
|
378
|
+
rvm_ruby_make="$next_token"
|
379
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
380
|
+
;;
|
381
|
+
--make-install)
|
382
|
+
rvm_ruby_make_install="$next_token" ; shift
|
383
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
384
|
+
;;
|
385
|
+
|
386
|
+
--nice)
|
387
|
+
rvm_niceness="$next_token"
|
388
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
389
|
+
;;
|
390
|
+
|
391
|
+
-l|--level)
|
392
|
+
rvm_ruby_patch_level="p$next_token"
|
393
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
394
|
+
;;
|
395
|
+
|
396
|
+
--sdk)
|
397
|
+
rvm_sdk="$next_token"
|
398
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
399
|
+
;;
|
400
|
+
|
401
|
+
--archflags)
|
402
|
+
rvm_archflags="$next_token"
|
403
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
404
|
+
;;
|
405
|
+
|
406
|
+
--install)
|
407
|
+
rvm_install_on_use_flag=1
|
408
|
+
;;
|
409
|
+
|
410
|
+
--trace|--debug)
|
411
|
+
local option=""
|
412
|
+
rvm_debug_flag=1
|
413
|
+
|
414
|
+
for option in verbose errexit noclobber nounset ; do
|
415
|
+
set -o $option
|
416
|
+
done
|
417
|
+
if [[ -z "${ZSH_VERSION:-""}" ]] ; then
|
418
|
+
set -o errtrace
|
419
|
+
set -o pipefail
|
420
|
+
fi
|
421
|
+
|
422
|
+
if [[ "$rvm_token" = "--trace" ]] ; then
|
343
423
|
rvm_trace_flag=1
|
424
|
+
set -o xtrace
|
344
425
|
if [[ -z "${ZSH_VERSION:-""}" ]] ; then
|
345
|
-
|
346
|
-
for option in verbose xtrace errexit errtrace noclobber nounset pipefail ; do
|
347
|
-
set -o $option
|
348
|
-
done
|
349
|
-
export PS4='+(${BASH_SOURCE}:${LINENO}): ${FUNCNAME[0]:+${FUNCNAME[0]}(): }'
|
350
|
-
else
|
351
|
-
set -x
|
426
|
+
export PS4='+${BASH_SOURCE} : ${LINENO} : ${FUNCNAME[0]:+${FUNCNAME[0]}() : }'
|
352
427
|
fi
|
353
|
-
|
354
|
-
--debug)
|
355
|
-
rvm_debug_flag=1
|
356
|
-
local option="" ;
|
357
|
-
for option in verbose errtrace ; do
|
358
|
-
set -o $option
|
359
|
-
done
|
428
|
+
fi
|
360
429
|
;;
|
430
|
+
|
361
431
|
-q|--quiet) rvm_quiet_flag=1 ;;
|
432
|
+
|
362
433
|
-s|--silent) rvm_silent_flag=1 ;;
|
363
|
-
|
434
|
+
|
435
|
+
--proxy)
|
436
|
+
rvm_proxy="$next_token"
|
437
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
438
|
+
;;
|
439
|
+
|
364
440
|
--disable-llvm|--disable-jit) rvm_llvm_flag=0 ;;
|
365
441
|
--enable-llvm|--enable-jit) rvm_llvm_flag=1 ;;
|
366
442
|
|
@@ -371,7 +447,8 @@ __rvm_parse_args() {
|
|
371
447
|
;;
|
372
448
|
|
373
449
|
--dump-environment)
|
374
|
-
export rvm_dump_environment_flag="$next_token"
|
450
|
+
export rvm_dump_environment_flag="$next_token"
|
451
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
375
452
|
;;
|
376
453
|
|
377
454
|
--clang)
|
@@ -383,7 +460,8 @@ __rvm_parse_args() {
|
|
383
460
|
-j)
|
384
461
|
if [[ ! -z "$next_token" ]] ; then
|
385
462
|
rvm_make_flags="$rvm_make_flags -j$next_token"
|
386
|
-
shift
|
463
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
464
|
+
|
387
465
|
else
|
388
466
|
rvm_action="error"
|
389
467
|
rvm_error_message="-j *must* be followed by an integer (normally the # of CPU's in your machine)."
|
@@ -392,13 +470,15 @@ __rvm_parse_args() {
|
|
392
470
|
|
393
471
|
--with-rubies)
|
394
472
|
rvm_ruby_strings="$next_token"
|
395
|
-
shift
|
473
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
474
|
+
|
396
475
|
;;
|
397
476
|
|
398
477
|
-C|--configure)
|
399
478
|
if [[ ! -z "$next_token" ]] ; then
|
400
479
|
rvm_ruby_configure_flags="$(echo $next_token | sed -e 's#,--# --#g')"
|
401
|
-
shift
|
480
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
481
|
+
|
402
482
|
else
|
403
483
|
rvm_action="error"
|
404
484
|
rvm_error_message="--configure *must* be followed by configure flags."
|
@@ -416,11 +496,11 @@ __rvm_parse_args() {
|
|
416
496
|
rvm_error_message="-I|--include *must* be followed by a path."
|
417
497
|
else
|
418
498
|
rvm_ruby_load_path="$rvm_ruby_load_path:$next_token"
|
419
|
-
shift
|
499
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
420
500
|
fi
|
421
501
|
;;
|
422
502
|
|
423
|
-
--) rvm_ruby_args="$*" ; rvm_parse_break=1 ;;
|
503
|
+
--) rvm_ruby_args="$next_token $*" ; rvm_parse_break=1 ;;
|
424
504
|
|
425
505
|
*)
|
426
506
|
if [[ -n "$rvm_token" ]] ; then
|
@@ -480,8 +560,8 @@ __rvm_parse_args() {
|
|
480
560
|
|
481
561
|
else
|
482
562
|
if "$rvm_scripts_path/match" "$rvm_token" ".rb$" ; then # we have a specified ruby script
|
483
|
-
rvm_ruby_args
|
484
|
-
rvm_ruby_file
|
563
|
+
rvm_ruby_args="$rvm_token"
|
564
|
+
rvm_ruby_file="$rvm_token"
|
485
565
|
if [[ -z "${rvm_action:-""}" ]] ; then rvm_action="ruby" ; fi
|
486
566
|
else
|
487
567
|
rvm_action="error"
|
@@ -493,9 +573,7 @@ __rvm_parse_args() {
|
|
493
573
|
rvm_error_message="Unrecognized command line argument(s): '$rvm_token $@'"
|
494
574
|
fi
|
495
575
|
|
496
|
-
if [[ "error" = "${rvm_action:-""}" ]] ; then
|
497
|
-
break;
|
498
|
-
fi
|
576
|
+
if [[ "error" = "${rvm_action:-""}" ]] ; then break ; fi
|
499
577
|
esac
|
500
578
|
|
501
579
|
if [[ -z "${rvm_action:-""}" && -n "${rvm_ruby_string:-""}" ]] ; then rvm_action="use" ; fi
|
@@ -507,11 +585,9 @@ __rvm_parse_args() {
|
|
507
585
|
while [[ $# -gt 0 ]] ; do shift ; done
|
508
586
|
|
509
587
|
if [[ -n "${rvm_error_message:-""}" ]] ; then
|
510
|
-
__rvm_pushpop
|
511
588
|
"$rvm_scripts_path"/log "fail" "$rvm_error_message ( see: 'rvm usage' )"
|
512
589
|
return 1
|
513
590
|
fi
|
514
|
-
|
515
591
|
}
|
516
592
|
|
517
593
|
rvm() {
|
@@ -530,7 +606,7 @@ rvm() {
|
|
530
606
|
# Check that this is the current version.
|
531
607
|
disk_version=$(tail -n 3 < "${rvm_path:-$HOME/.rvm}/lib/VERSION.yml" | sed -e 's/^.*: //g' | \tr "\n" '.' | sed -e 's/\.$//')
|
532
608
|
|
533
|
-
if [[ $# -gt 0 ]] ; then next_token="$1" ; else next_token="" ; fi
|
609
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
534
610
|
|
535
611
|
if [[ "${rvm_version}" != "${disk_version}" ]] && [[ "reload" != "$next_token" ]]; then
|
536
612
|
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"
|
@@ -567,7 +643,7 @@ rvm() {
|
|
567
643
|
help) "$rvm_scripts_path/help" $rvm_ruby_args ; result=$? ;;
|
568
644
|
env) "$rvm_scripts_path/env" "$rvm_ruby_string" ; result=$? ;;
|
569
645
|
info)
|
570
|
-
if [[ $# -gt 0 ]] ; then next_token="$1" ; else next_token="" ; fi
|
646
|
+
if [[ $# -gt 0 ]] ; then next_token="$1" ; shift ; else next_token="" ; fi
|
571
647
|
if [[ "$next_token" = "info" ]]; then shift; fi
|
572
648
|
"$rvm_scripts_path/info" $rvm_ruby_args
|
573
649
|
result=$?
|
@@ -589,7 +665,7 @@ rvm() {
|
|
589
665
|
old_rvm_ruby_string=$rvm_ruby_string
|
590
666
|
unset rvm_ruby_string
|
591
667
|
export rvm_ruby_strings
|
592
|
-
"$rvm_scripts_path/set" "$rvm_action"
|
668
|
+
"$rvm_scripts_path/set" "$rvm_action" $rvm_ruby_args
|
593
669
|
result=$?
|
594
670
|
# Restore the state pre-sets.
|
595
671
|
[[ -n "$old_rvm_ruby_string" ]] && rvm_ruby_string=$old_rvm_ruby_string
|
@@ -652,7 +728,6 @@ rvm() {
|
|
652
728
|
;;
|
653
729
|
|
654
730
|
error)
|
655
|
-
__rvm_pushpop
|
656
731
|
result=1
|
657
732
|
;;
|
658
733
|
|