rvm 0.0.53 → 0.0.54
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 +2 -2
- data/scripts/cli +51 -16
- data/scripts/ruby-installer +3 -9
- data/scripts/selector +21 -6
- data/scripts/utility +50 -17
- metadata +2 -2
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 = "0.0.
|
8
|
+
s.version = "0.0.54"
|
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{2009-10-
|
12
|
+
s.date = %q{2009-10-03}
|
13
13
|
s.default_executable = %q{rvm-install}
|
14
14
|
s.description = %q{Manages Ruby interpreter installations and switching between them.}
|
15
15
|
s.email = %q{wayneeseguin@gmail.com}
|
data/scripts/cli
CHANGED
@@ -107,10 +107,15 @@ function __rvm_parse-args {
|
|
107
107
|
while [ $# -gt 0 ] ; do
|
108
108
|
rvm_token="$1" ; shift
|
109
109
|
case "$rvm_token" in
|
110
|
-
install|uninstall|path|info|setup|version|srcdir|list|reset|debug|reload|implode|update|readline|iconv|
|
110
|
+
install|uninstall|path|info|setup|version|srcdir|list|reset|debug|reload|implode|update|readline|iconv|gemsync)
|
111
111
|
rvm_action=$rvm_token
|
112
112
|
;;
|
113
113
|
|
114
|
+
use)
|
115
|
+
rvm_action=$rvm_token
|
116
|
+
if [ "$1" = "ruby" ] ; then shift ; fi
|
117
|
+
;;
|
118
|
+
|
114
119
|
inspect)
|
115
120
|
rvm_action=$rvm_token
|
116
121
|
rvm_ruby_args=$*
|
@@ -131,29 +136,40 @@ function __rvm_parse-args {
|
|
131
136
|
rvm_action="${rvm_action:-use}"
|
132
137
|
;;
|
133
138
|
|
134
|
-
|
139
|
+
gemset)
|
140
|
+
set +x
|
135
141
|
rvm_action=$rvm_token
|
142
|
+
if [ "$1" = "delete" ] ; then
|
143
|
+
rvm_delete_flag=1
|
144
|
+
shift
|
145
|
+
if [ -z "$1" -a -z "$rvm_gem_set_name" ] ; then
|
146
|
+
rvm_action="error"
|
147
|
+
rvm_error_message="A gem set name must be specified with 'gemset delete'"
|
148
|
+
else
|
149
|
+
rvm_gem_set_name="$1"
|
150
|
+
shift
|
151
|
+
fi
|
152
|
+
fi
|
153
|
+
set -x
|
154
|
+
;;
|
136
155
|
|
156
|
+
gemdir)
|
157
|
+
rvm_action=$rvm_token
|
137
158
|
if [ "$1" = "system" ] ; then rvm_ruby_interpreter="system" ; shift ; fi
|
138
159
|
if [ "$1" = "user" ] ; then rvm_ruby_interpreter="user" ; shift ; fi
|
139
|
-
|
140
160
|
rvm_ruby_interpreter="${rvm_ruby_interpreter:-current}"
|
141
161
|
;;
|
142
162
|
|
143
163
|
--load|load|dump)
|
164
|
+
rvm_action=gemset
|
144
165
|
eval "rvm_${rvm_token}_flag=1"
|
145
166
|
if [ ! -z "$1" ] ; then
|
146
|
-
|
147
|
-
|
148
|
-
else
|
149
|
-
rvm_gem_set_name=$1
|
150
|
-
fi
|
167
|
+
rvm_gem_set_name=$(echo $1 | sed 's/\.gemset//' | xargs basename)
|
168
|
+
rvm_file_name="$(echo $1 | sed 's/\.gemset//').gemset"
|
151
169
|
shift
|
152
170
|
else
|
153
|
-
|
171
|
+
rvm_file_name="$rvm_gem_set_name.gemset"
|
154
172
|
fi
|
155
|
-
rvm_file_name="$rvm_gem_set_name.gemset"
|
156
|
-
rvm_action=$rvm_token
|
157
173
|
;;
|
158
174
|
|
159
175
|
gemdup)
|
@@ -213,9 +229,15 @@ function __rvm_parse-args {
|
|
213
229
|
rvm_action=${rvm_action:-use}
|
214
230
|
;;
|
215
231
|
|
216
|
-
1.2.0|1.3.1)
|
232
|
+
1.2.0|1.3|1.3.0|1.3.1|1.4|1.4.0)
|
233
|
+
if [ "$rvm_token" = "1.3" ] ; then
|
234
|
+
rvm_ruby_version="1.3.1"
|
235
|
+
elif [ "$rvm_token" = "1.4" ] ; then
|
236
|
+
rvm_ruby_version="1.4.0"
|
237
|
+
else
|
238
|
+
rvm_ruby_version="$rvm_token"
|
239
|
+
fi
|
217
240
|
rvm_ruby_interpreter=${rvm_ruby_interpreter:-jruby}
|
218
|
-
rvm_ruby_version="$rvm_token"
|
219
241
|
rvm_action=${rvm_action:-use}
|
220
242
|
;;
|
221
243
|
|
@@ -228,6 +250,10 @@ function __rvm_parse-args {
|
|
228
250
|
fi
|
229
251
|
;;
|
230
252
|
|
253
|
+
--repository|--repo|--url)
|
254
|
+
rvm_ruby_repo_url=$rvm_token
|
255
|
+
;;
|
256
|
+
|
231
257
|
-t|--tag)
|
232
258
|
rvm_ruby_tag="$1";
|
233
259
|
rvm_action="${rvm_action:-use}"
|
@@ -332,7 +358,7 @@ function __rvm_parse-args {
|
|
332
358
|
--rm-gem-set) rvm_gem_set_name_rm="$1" ; shift ;;
|
333
359
|
tests|specs) rvm_action="tests" ;;
|
334
360
|
|
335
|
-
--self|--gem|--rubygems|--reconfigure|--default|--debug|--force|--all|--dump|--summary|--jit|--latest|--yaml|--json|--archive|--shebang|--env|--path|--tail|--trace)
|
361
|
+
--self|--gem|--rubygems|--reconfigure|--default|--debug|--force|--all|--dump|--summary|--jit|--latest|--yaml|--json|--archive|--shebang|--env|--path|--tail|--trace|--delete)
|
336
362
|
eval "rvm_$(echo $rvm_token | sed 's/-//g')_flag=1"
|
337
363
|
;;
|
338
364
|
|
@@ -410,8 +436,17 @@ function rvm {
|
|
410
436
|
result=$?
|
411
437
|
;;
|
412
438
|
|
413
|
-
|
414
|
-
|
439
|
+
gemset)
|
440
|
+
if [ ! -z "$rvm_load_flag" ] ; then
|
441
|
+
__rvm_gemset_load
|
442
|
+
elif [ ! -z "$rvm_dump_flag" ] ; then
|
443
|
+
__rvm_gemset_load
|
444
|
+
elif [ ! -z "$rvm_delete_flag" ] ; then
|
445
|
+
__rvm_gemset_delete
|
446
|
+
else
|
447
|
+
rvm_action="error"
|
448
|
+
rvm_error_message="At least one of load, dump, or delete must be specified with 'gemset'."
|
449
|
+
fi
|
415
450
|
;;
|
416
451
|
|
417
452
|
gemsync)
|
data/scripts/ruby-installer
CHANGED
@@ -267,10 +267,6 @@ RubyWrapper
|
|
267
267
|
;;
|
268
268
|
|
269
269
|
jruby)
|
270
|
-
rvm_package_file="$rvm_ruby_interpreter-bin-$rvm_ruby_version"
|
271
|
-
rvm_url="http://dist.codehaus.org/$rvm_ruby_interpreter/$rvm_ruby_version/$rvm_package_file.zip"
|
272
|
-
rvm_jruby_repo_url="${rvm_jruby_repo_url:-"git://kenai.com/jruby~main"}"
|
273
|
-
|
274
270
|
mkdir -p $rvm_ruby_log_path
|
275
271
|
__rvm_pushpop $rvm_source_path
|
276
272
|
|
@@ -289,11 +285,9 @@ RubyWrapper
|
|
289
285
|
__rvm_log "info" "Downloading $rvm_package_file, this may take a while depending on your connection..."
|
290
286
|
__rvm_fetch $rvm_url
|
291
287
|
fi
|
292
|
-
|
293
|
-
if [
|
294
|
-
|
295
|
-
else
|
296
|
-
__rvm_run "extract" "unzip -q $rvm_archives_path/$rvm_package_file.zip -d $rvm_source_path" "Extracting $rvm_package_file..."
|
288
|
+
__rvm_run "extract" "tar zxf $rvm_archives_path/$rvm_package_file.tar.gz -C $rvm_source_path" "Extracting $rvm_package_file..."
|
289
|
+
if [ "$rvm_package_file" != "$rvm_ruby_string" ] ; then
|
290
|
+
mv $rvm_source_path/$rvm_package_file $rvm_source_path/$rvm_ruby_string
|
297
291
|
fi
|
298
292
|
cd $rvm_ruby_src_path
|
299
293
|
fi
|
data/scripts/selector
CHANGED
@@ -43,7 +43,7 @@ function __rvm_select {
|
|
43
43
|
rvm_ruby_version="head"
|
44
44
|
unset rvm_ruby_patch_level
|
45
45
|
rvm_ruby_interpreter="rubinius"
|
46
|
-
rvm_ruby_repo_url
|
46
|
+
rvm_ruby_repo_url=${rvm_rbx_repo_url:-`__rvm_db "rubinius_repo_url"`}
|
47
47
|
rvm_url=$rvm_ruby_repo_url
|
48
48
|
rvm_ruby_configure=""
|
49
49
|
rvm_ruby_make="build"
|
@@ -53,8 +53,16 @@ function __rvm_select {
|
|
53
53
|
|
54
54
|
jruby)
|
55
55
|
rvm_ruby_version="${rvm_ruby_version:-`__rvm_db "jruby_version"`}"
|
56
|
+
rvm_jruby_repo_url="${rvm_jruby_repo_url:-"git://kenai.com/jruby~main"}"
|
57
|
+
if [ ! -z "$(echo $rvm_ruby_version | awk '/^1.4/')" ] ; then
|
58
|
+
rvm_ruby_version="1.4.0RC1"
|
59
|
+
rvm_package_file="$rvm_ruby_interpreter-bin-${rvm_ruby_version}"
|
60
|
+
else
|
61
|
+
rvm_package_file="$rvm_ruby_interpreter-bin-$rvm_ruby_version"
|
62
|
+
fi
|
63
|
+
rvm_url="http://dist.codehaus.org/$rvm_ruby_interpreter/$rvm_ruby_version/$rvm_package_file.tar.gz"
|
56
64
|
unset rvm_ruby_patch_level
|
57
|
-
if [ -z "$(echo $rvm_ruby_version | awk '/^1\.2
|
65
|
+
if [ -z "$(echo $rvm_ruby_version | awk '/^1\.[2-4]/')" ] ; then
|
58
66
|
__rvm_log "fail" "Unknown jRuby version: $rvm_ruby_version"
|
59
67
|
fi
|
60
68
|
alias jruby_ng="jruby --ng"
|
@@ -109,6 +117,15 @@ function __rvm_select {
|
|
109
117
|
fi
|
110
118
|
fi
|
111
119
|
|
120
|
+
if [ -z "$rvm_gem_set_name" ] ; then
|
121
|
+
gemset=$(gem env gemdir | xargs basename | sed "s/${rvm_ruby_version}-//")
|
122
|
+
if [ "$gemset" != "$rvm_ruby_version" ] ; then
|
123
|
+
rvm_gem_set_name="$gemset"
|
124
|
+
else
|
125
|
+
unset rvm_gem_set_name
|
126
|
+
fi ; unset gemset
|
127
|
+
fi
|
128
|
+
|
112
129
|
if [ ! -z "$rvm_ruby_interpreter" -a ! -z "$rvm_ruby_version" -a "$rvm_ruby_interpreter" != "system" ] ; then
|
113
130
|
rvm_major_version=$(echo $rvm_ruby_version | awk -F'.' '{ print $2 }')
|
114
131
|
rvm_minor_version=$(echo $rvm_ruby_version | awk -F'.' '{ print $3 }')
|
@@ -139,11 +156,11 @@ function __rvm_select {
|
|
139
156
|
rvm_ruby_package_name="${rvm_ruby_package_name:-"$rvm_ruby_interpreter-$rvm_ruby_version-$rvm_ruby_patch_level"}"
|
140
157
|
rvm_ruby_home="${rvm_ruby_home:-"$rvm_path/$rvm_ruby_interpreter-$rvm_ruby_version-$rvm_ruby_patch_level"}"
|
141
158
|
fi
|
159
|
+
rvm_ruby_string="$rvm_ruby_package_name"
|
142
160
|
rvm_ruby_log_path="$rvm_log_path/$rvm_ruby_package_name"
|
143
|
-
rvm_ruby_src_path="$rvm_source_path/$
|
161
|
+
rvm_ruby_src_path="$rvm_source_path/$rvm_ruby_string"
|
144
162
|
rvm_ruby_binary="$rvm_ruby_home/bin/ruby"
|
145
163
|
rvm_ruby_irbrc="$rvm_ruby_home/.irbrc"
|
146
|
-
rvm_ruby_string="$rvm_ruby_package_name"
|
147
164
|
rvm_selected=1
|
148
165
|
|
149
166
|
export rvm_ruby_interpreter rvm_ruby_version rvm_ruby_repo_url rvm_ruby_package_name rvm_url rvm_ruby_patch_level rvm_ruby_configure rvm_ruby_make rvm_ruby_make_install rvm_ruby_rev rvm_ruby_tag rvm_major_version rvm_minor_version rvm_gem_set_name rvm_gem_path rvm_gem_home rvm_path rvm_source_path rvm_bin_path rvm_ruby_binary rvm_ruby_home rvm_log_path rvm_ruby_log_path rvm_source_path rvm_ruby_src_path rvm_ruby_irbrc rvm_selected rvm_ruby_string
|
@@ -173,10 +190,8 @@ function __rvm_use {
|
|
173
190
|
elif [ "$rvm_ruby_interpreter" = "system" ] ; then
|
174
191
|
|
175
192
|
unset GEM_HOME GEM_PATH MY_RUBY_HOME RUBY_VERSION IRBRC
|
176
|
-
|
177
193
|
PATH=$(echo $PATH | tr ':' '\n' | awk '$0 !~ /rvm/' | paste -sd : -)
|
178
194
|
PATH=$rvm_bin_path:$PATH ; export PATH
|
179
|
-
|
180
195
|
if [ -s $rvm_path/system ] ; then
|
181
196
|
grep "^MY_RUBY_HOME='$rvm_path" "$rvm_path/system" > /dev/null
|
182
197
|
if [ $? -eq 0 ] ; then
|
data/scripts/utility
CHANGED
@@ -46,9 +46,12 @@ function __rvm_debug {
|
|
46
46
|
fi
|
47
47
|
done
|
48
48
|
|
49
|
+
__rvm_log "debug" "gem sources:\n$(gem sources | awk '/gems/')"
|
50
|
+
|
49
51
|
if [ -f $rvm_path/bin/rvm ] ; then
|
50
52
|
__rvm_log "error" "rvm script in bin! \n$(ls -laht $rvm_path/bin/rvm)"
|
51
53
|
fi
|
54
|
+
|
52
55
|
}
|
53
56
|
|
54
57
|
# Logging functions based on level
|
@@ -158,6 +161,7 @@ function __rvm_fetch {
|
|
158
161
|
__rvm_log "debug" "No archive or no MD5, downloading"
|
159
162
|
download=1
|
160
163
|
fi
|
164
|
+
|
161
165
|
if [ $download -gt 0 ] ; then
|
162
166
|
eval $rvm_fetch "$1"
|
163
167
|
result=$?
|
@@ -167,13 +171,18 @@ function __rvm_fetch {
|
|
167
171
|
elif [ $result -eq 33 ] ; then
|
168
172
|
__rvm_log "debug" "Server does not support 'range' command, removing '$archive'"
|
169
173
|
rm -f $archive
|
170
|
-
|
174
|
+
eval $rvm_fetch "$1"
|
175
|
+
result=$?
|
176
|
+
if [ $result -gt 0 ] ; then
|
177
|
+
__rvm_log "error" "There was an error, please check $rvm_ruby_log_path/*.error.log"
|
178
|
+
fi
|
171
179
|
else
|
172
180
|
__rvm_log "error" "There was an error, please check $rvm_ruby_log_path/*.error.log"
|
173
181
|
fi
|
174
182
|
fi
|
175
183
|
__rvm_pushpop
|
176
184
|
fi
|
185
|
+
|
177
186
|
unset archive
|
178
187
|
unset download
|
179
188
|
return $result
|
@@ -345,9 +354,9 @@ function __rvm_db {
|
|
345
354
|
function __rvm_list {
|
346
355
|
if [ "$rvm_all_flag" ] ; then
|
347
356
|
svn list http://svn.ruby-lang.org/repos/ruby/tags/ | grep 'v1_[8|9]' | sed 's/^v1_//' | sed 's/\/$//' | awk -F'_' '{print "1."$1"."$2 " -l "$3}' | sed 's/p$//'
|
348
|
-
echo -e "jruby 1.2.0\njruby 1.3.0\njruby 1.3.1\njruby --head"
|
349
|
-
echo -e "rbx head (rubinius head)\nrbx head --jit"
|
350
|
-
echo -e "ree
|
357
|
+
echo -e "jruby 1.2.0\njruby 1.3.0\njruby (1.3.1, the default)\njruby 1.4.1\njruby --head"
|
358
|
+
echo -e "rbx head (rubinius head, the default)\nrbx head --jit"
|
359
|
+
echo -e "ree 1.8.6 --head\nree (1.8.7, the default)"
|
351
360
|
else
|
352
361
|
current_ruby=`which ruby | xargs dirname | xargs dirname | xargs basename 2> /dev/null`
|
353
362
|
echo -e "\nruby:\n"
|
@@ -594,16 +603,15 @@ function __rvm_do {
|
|
594
603
|
|
595
604
|
function __rvm_summary {
|
596
605
|
export successes errors statuses
|
597
|
-
summary="\nSummary:\n"
|
598
|
-
|
599
|
-
|
606
|
+
summary="\nSummary:\n\n"
|
607
|
+
if [ ${#successes[*]} -gt 0 ] ; then
|
608
|
+
summary="$summary \033[0;32m${#successes[*]} successful: $(echo "${successes[*]}" | sed 's/ /, /g')\033[0m\n"
|
609
|
+
fi
|
610
|
+
if [ ${#errors[*]} -gt 0 ] ; then
|
611
|
+
summary="$summary \033[0;31m${#errors[*]} errors: $(echo "${errors[*]}" | sed 's/ /, /g')\033[0m\n"
|
612
|
+
fi
|
600
613
|
total=${#rubies[*]}
|
601
614
|
if [ ! -z "$ZSH_VERSION" ] ; then array_start=1 ; else array_start=0 ; fi
|
602
|
-
for (( index = $array_start ; index < $total + $array_start ; index++ )) ; do
|
603
|
-
__rvm_log "debug" "${rubies[$index]} returned ${statuses[$index]}"
|
604
|
-
summary="$summary ${rubies[$index]} returned ${statuses[$index]}"
|
605
|
-
if (( $index + 1 < $total + $array_start )) ; then summary="$summary\n" ; fi
|
606
|
-
done ; unset index array_start
|
607
615
|
echo -e "$summary" | tee -a log/summary.log
|
608
616
|
return ${#errors[*]}
|
609
617
|
}
|
@@ -670,13 +678,36 @@ RubyCode
|
|
670
678
|
__rvm_do
|
671
679
|
}
|
672
680
|
|
673
|
-
|
681
|
+
__rvm_gemset_delete () {
|
674
682
|
if [ -z "$rvm_selected" ] ; then __rvm_select $* ; fi
|
675
|
-
|
683
|
+
|
684
|
+
if [ ! -z $rvm_gem_set_name ] ; then
|
685
|
+
gemdir="$rvm_gem_path/$rvm_ruby_interpreter/$rvm_ruby_version-$rvm_gem_set_name"
|
686
|
+
if [ -d $gemdir ] ; then
|
687
|
+
__rvm_log "warn" "Are you SURE you wish to remove the installed gemset '$rvm_gem_set_name ' ($gemdir)?"
|
688
|
+
echo -n "(anything other than 'yes' will cancel) > "
|
689
|
+
read response
|
690
|
+
if [ "$response" = "yes" ] ; then
|
691
|
+
rm -rf $gemdir
|
692
|
+
else
|
693
|
+
__rvm_log "info" "Not doing anything, phew... close call that one eh?"
|
694
|
+
fi
|
695
|
+
else
|
696
|
+
__rvm_log "info" "$gemdir does not exist, dirtywork alredy done."
|
697
|
+
fi
|
698
|
+
unset gemdir
|
699
|
+
else
|
700
|
+
__rvm_log "error" "A gemset name must be specified in order to delete a gemset."
|
701
|
+
fi
|
702
|
+
}
|
703
|
+
|
704
|
+
function __rvm_gemset_dump {
|
705
|
+
rvm_gem_set_name=${rvm_gem_set_name:-"default"}
|
706
|
+
rvm_file_name=${rvm_file_name:-$rvm_gem_set_name}
|
676
707
|
|
677
708
|
echo "# $rvm_gem_set_name.gemset generated gem dump file. Note that any env variable settings will be missing. Append these after using a ';' field separator" > $rvm_gem_set_name.gemset
|
678
709
|
|
679
|
-
for gem in
|
710
|
+
for gem in $(gem list | sed 's/[\(|\)]//g' | sed 's/, /,/g' | tr ' ' ';') ; do
|
680
711
|
name=`echo $gem | awk -F';' '{print $1}'`
|
681
712
|
if [ -z "$rvm_latest_flag" ] ; then
|
682
713
|
versions=`echo $gem | awk -F';' '{print $2}' | sed 's/,/ /g'`
|
@@ -690,8 +721,10 @@ function __rvm_gemset_dump {
|
|
690
721
|
}
|
691
722
|
|
692
723
|
function __rvm_gemset_load {
|
693
|
-
|
694
|
-
|
724
|
+
rvm_gem_set_name=${rvm_gem_set_name:-"default"}
|
725
|
+
rvm_file_name=${rvm_file_name:-$rvm_gem_set_name}
|
726
|
+
|
727
|
+
echo "Loading $rvm_file_name file..."
|
695
728
|
rvm_ruby_gem_list=`/bin/ls $rvm_gem_home/specifications/ 2> /dev/null | sed 's/\.gemspec$//' 2> /dev/null`
|
696
729
|
while read line
|
697
730
|
do # Keep this on 2nd line :( bash fail.
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rvm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.54
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Wayne E. Seguin
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-10-
|
12
|
+
date: 2009-10-03 00:00:00 -04:00
|
13
13
|
default_executable: rvm-install
|
14
14
|
dependencies: []
|
15
15
|
|