rvm 1.0.11 → 1.0.13
Sign up to get free protection for your applications and to get access to all the features.
- data/binscripts/rvm-prompt +99 -7
- data/binscripts/rvmsudo +1 -3
- data/config/db +4 -2
- data/config/known +4 -2
- data/config/md5 +2 -0
- data/contrib/install-system-wide +2 -2
- data/contrib/r +16 -0
- data/install +86 -31
- data/lib/VERSION.yml +1 -1
- data/rvm.gemspec +2 -2
- data/scripts/array +6 -3
- data/scripts/cd +39 -10
- data/scripts/cleanup +9 -6
- data/scripts/cli +6 -5
- data/scripts/completion +2 -0
- data/scripts/db +2 -1
- data/scripts/default +6 -3
- data/scripts/disk-usage +12 -8
- data/scripts/docs +8 -4
- data/scripts/env +2 -1
- data/scripts/environment-convertor +12 -6
- data/scripts/fetch +4 -5
- data/scripts/gemsets +56 -33
- data/scripts/hash +2 -1
- data/scripts/info +18 -9
- data/scripts/install +86 -31
- data/scripts/list +22 -18
- data/scripts/manage +217 -114
- data/scripts/migrate +11 -5
- data/scripts/monitor +15 -5
- data/scripts/notes +2 -2
- data/scripts/override_gem +2 -1
- data/scripts/package +28 -15
- data/scripts/patches +6 -3
- data/scripts/patchsets +6 -3
- data/scripts/repair +48 -12
- data/scripts/rubygems +3 -2
- data/scripts/rvm-install +86 -31
- data/scripts/selector +43 -21
- data/scripts/set +10 -8
- data/scripts/snapshot +16 -6
- data/scripts/tools +8 -4
- data/scripts/update +86 -31
- data/scripts/upgrade +62 -24
- data/scripts/utility +362 -180
- data/scripts/version +5 -2
- data/scripts/wrapper +40 -20
- metadata +4 -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.13"
|
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-
|
12
|
+
s.date = %q{2010-10-03}
|
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}
|
data/scripts/array
CHANGED
@@ -3,7 +3,8 @@
|
|
3
3
|
if [[ -n "${ZSH_VERSION:-""}" ]] ; then __array_start=1 ; else __array_start=0 ; fi
|
4
4
|
|
5
5
|
# Usage: contains "a_string" "${an_array[@]}"
|
6
|
-
array_contains()
|
6
|
+
array_contains()
|
7
|
+
{
|
7
8
|
local pattern="$1" ; shift
|
8
9
|
local index list
|
9
10
|
list=("$@")
|
@@ -13,14 +14,16 @@ array_contains() {
|
|
13
14
|
echo -1 ; return 1
|
14
15
|
}
|
15
16
|
|
16
|
-
array_length()
|
17
|
+
array_length()
|
18
|
+
{
|
17
19
|
array=$1
|
18
20
|
eval "length=\${#${array}[*]}"
|
19
21
|
echo $length
|
20
22
|
return $length
|
21
23
|
}
|
22
24
|
|
23
|
-
array_push()
|
25
|
+
array_push()
|
26
|
+
{
|
24
27
|
array=$1 ; item=$2
|
25
28
|
# TODO: allow loop over more arguments.
|
26
29
|
eval "index=\$((\${#${array}[*]} + $__array_start))"
|
data/scripts/cd
CHANGED
@@ -9,13 +9,18 @@ if [[ ${rvm_project_rvmrc:-1} -ne 0 ]] ; then
|
|
9
9
|
autoload is-at-least
|
10
10
|
|
11
11
|
if is-at-least 4.3.4 >/dev/null 2>&1; then
|
12
|
+
|
12
13
|
# On zsh, use chpwd_functions
|
13
14
|
chpwd_functions=( "${chpwd_functions[@]}" __rvm_project_rvmrc )
|
15
|
+
|
14
16
|
else
|
15
17
|
|
16
|
-
cd()
|
18
|
+
cd()
|
19
|
+
{
|
17
20
|
builtin cd "$@"
|
21
|
+
|
18
22
|
local result=$?
|
23
|
+
|
19
24
|
__rvm_project_rvmrc
|
20
25
|
|
21
26
|
rvm_hook="after_cd" ; source "$rvm_path/scripts/hook"
|
@@ -27,9 +32,12 @@ if [[ ${rvm_project_rvmrc:-1} -ne 0 ]] ; then
|
|
27
32
|
|
28
33
|
else
|
29
34
|
|
30
|
-
cd()
|
35
|
+
cd()
|
36
|
+
{
|
31
37
|
builtin cd "$@"
|
38
|
+
|
32
39
|
local result=$?
|
40
|
+
|
33
41
|
__rvm_project_rvmrc
|
34
42
|
|
35
43
|
rvm_hook="after_cd" ; source "$rvm_path/scripts/hook"
|
@@ -39,18 +47,39 @@ if [[ ${rvm_project_rvmrc:-1} -ne 0 ]] ; then
|
|
39
47
|
|
40
48
|
_rvm_cd_complete ()
|
41
49
|
{
|
42
|
-
local
|
50
|
+
local directory current matches item index
|
51
|
+
|
43
52
|
COMPREPLY=()
|
44
|
-
cur="${COMP_WORDS[COMP_CWORD]}"
|
45
53
|
|
46
|
-
|
47
|
-
find $dir/* -type d -maxdepth 0 -exec basename {} \;
|
48
|
-
done | sort | uniq)
|
54
|
+
current="${COMP_WORDS[COMP_CWORD]}"
|
49
55
|
|
50
|
-
|
51
|
-
|
56
|
+
if [[ -n "$CDPATH" ]] ; then
|
57
|
+
|
58
|
+
index=${#COMPREPLY[@]}
|
59
|
+
|
60
|
+
for directory in $(echo "$CDPATH" | tr -s ':' ' ') ; do
|
52
61
|
|
53
|
-
|
62
|
+
for item in $( compgen -d "$directory/$current" ) ; do
|
63
|
+
|
64
|
+
item="${item}/"
|
65
|
+
|
66
|
+
COMPREPLY[index++]=${item#$directory/}
|
67
|
+
|
68
|
+
done
|
69
|
+
|
70
|
+
done
|
71
|
+
|
72
|
+
COMPREPLY=( $(echo ${COMPREPLY} | uniq | sort) )
|
73
|
+
|
74
|
+
else
|
75
|
+
|
76
|
+
COMPREPLY=( $(compgen -d ${current}) )
|
77
|
+
|
78
|
+
fi
|
79
|
+
|
80
|
+
complete -o filenames -o nospace -F _rvm_cd_complete cd
|
81
|
+
|
82
|
+
}
|
54
83
|
|
55
84
|
fi
|
56
85
|
|
data/scripts/cleanup
CHANGED
@@ -2,7 +2,8 @@
|
|
2
2
|
rvm_base_except="selector"
|
3
3
|
source "$rvm_path/scripts/base"
|
4
4
|
|
5
|
-
usage()
|
5
|
+
usage()
|
6
|
+
{
|
6
7
|
printf "
|
7
8
|
|
8
9
|
Usage:
|
@@ -16,14 +17,16 @@ usage() {
|
|
16
17
|
return 0
|
17
18
|
}
|
18
19
|
|
19
|
-
cleanup()
|
20
|
+
cleanup()
|
21
|
+
{
|
20
22
|
local cleanup_type current_path
|
21
23
|
|
22
24
|
for cleanup_type in $1; do
|
23
25
|
|
24
|
-
|
26
|
+
current_path="${rvm_path}/${cleanup_type}"
|
25
27
|
|
26
|
-
if [[ -n "$current_path" && -d "$current_path"
|
28
|
+
if [[ -n "$current_path" && -d "$current_path" \
|
29
|
+
&& "$current_path" != "/" ]]; then
|
27
30
|
|
28
31
|
"$rvm_path/scripts/log" "info" \
|
29
32
|
"Cleaning up rvm directory '$current_path'"
|
@@ -43,9 +46,9 @@ if [[ -z "${1:-""}" ]] ; then
|
|
43
46
|
fi
|
44
47
|
|
45
48
|
case "$1" in
|
46
|
-
all) cleanup "archives
|
49
|
+
all) cleanup "archives repos src log" ;;
|
47
50
|
archives) cleanup "archives" ;;
|
48
|
-
repos) cleanup "
|
51
|
+
repos) cleanup "repos" ;;
|
49
52
|
sources) cleanup "src" ;;
|
50
53
|
logs) cleanup "log" ;;
|
51
54
|
help) usage ;;
|
data/scripts/cli
CHANGED
@@ -2,7 +2,8 @@
|
|
2
2
|
|
3
3
|
__rvm_usage() { ${PAGER:-less} "${rvm_path:-$HOME/.rvm}/README" ; }
|
4
4
|
|
5
|
-
__rvm_run_script()
|
5
|
+
__rvm_run_script()
|
6
|
+
{
|
6
7
|
local rvm_script_name="${1:-"$rvm_action"}"
|
7
8
|
|
8
9
|
eval "$rvm_path/scripts/$rvm_script_name $rvm_ruby_args"
|
@@ -10,8 +11,8 @@ __rvm_run_script() {
|
|
10
11
|
return $?
|
11
12
|
}
|
12
13
|
|
13
|
-
__rvm_parse_args()
|
14
|
-
|
14
|
+
__rvm_parse_args()
|
15
|
+
{
|
15
16
|
# TODO:
|
16
17
|
# Make this more robust '__rvm_history' so that it stores *unique* rvm commands.
|
17
18
|
# Otherwise this file gets big rather fast.
|
@@ -594,8 +595,8 @@ __rvm_parse_args() {
|
|
594
595
|
fi
|
595
596
|
}
|
596
597
|
|
597
|
-
rvm()
|
598
|
-
|
598
|
+
rvm()
|
599
|
+
{
|
599
600
|
local result
|
600
601
|
|
601
602
|
__rvm_setup
|
data/scripts/completion
CHANGED
data/scripts/db
CHANGED
data/scripts/default
CHANGED
@@ -6,7 +6,8 @@ rvm_ruby_gem_home="${rvm_ruby_gem_home:-$GEM_HOME}"
|
|
6
6
|
|
7
7
|
if [[ ! -d "$rvm_ruby_gem_home" ]] && command -v gem > /dev/null 2>&1; then rvm_ruby_gem_home="$(gem env home)" ; fi
|
8
8
|
|
9
|
-
usage()
|
9
|
+
usage()
|
10
|
+
{
|
10
11
|
printf "
|
11
12
|
|
12
13
|
Usage:
|
@@ -32,11 +33,13 @@ usage() {
|
|
32
33
|
"
|
33
34
|
}
|
34
35
|
|
35
|
-
default_list()
|
36
|
+
default_list()
|
37
|
+
{
|
36
38
|
:
|
37
39
|
}
|
38
40
|
|
39
|
-
default_clear()
|
41
|
+
default_clear()
|
42
|
+
{
|
40
43
|
:
|
41
44
|
}
|
42
45
|
|
data/scripts/disk-usage
CHANGED
@@ -4,26 +4,29 @@
|
|
4
4
|
rvm_base_except="selector"
|
5
5
|
source "$rvm_path/scripts/base"
|
6
6
|
|
7
|
-
usage()
|
7
|
+
usage()
|
8
|
+
{
|
8
9
|
printf "Usage: 'rvm disk-usage {all,archives,repos,sources,logs,packages,rubies,gemsets}'\n"
|
9
10
|
printf " Lists the space rvm uses for a given item.\n"
|
10
11
|
exit 1
|
11
12
|
}
|
12
13
|
|
13
|
-
disk_usage_for_directory()
|
14
|
+
disk_usage_for_directory()
|
15
|
+
{
|
14
16
|
du -hs "$1" | awk '{print $1}'
|
15
17
|
}
|
16
18
|
|
17
|
-
disk_usage()
|
18
|
-
|
19
|
-
|
19
|
+
disk_usage()
|
20
|
+
{
|
21
|
+
local current_path="$rvm_path/$2"
|
20
22
|
if [[ -n "$current_path" && -d "$current_path" && "$current_path" != "/" ]]; then
|
21
23
|
echo "$1 Usage: $(disk_usage_for_directory "$current_path")"
|
22
24
|
fi
|
23
25
|
return 0
|
24
26
|
}
|
25
27
|
|
26
|
-
all_disk_usage()
|
28
|
+
all_disk_usage()
|
29
|
+
{
|
27
30
|
archives_disk_usage
|
28
31
|
repos_disk_usage
|
29
32
|
sources_disk_usage
|
@@ -34,12 +37,13 @@ all_disk_usage() {
|
|
34
37
|
total_disk_usage
|
35
38
|
}
|
36
39
|
|
37
|
-
total_disk_usage()
|
40
|
+
total_disk_usage()
|
41
|
+
{
|
38
42
|
echo "Total Disk Usage: $(disk_usage_for_directory "$rvm_path")"
|
39
43
|
}
|
40
44
|
|
41
45
|
archives_disk_usage() { disk_usage "Downloaded Archives" "archives"; }
|
42
|
-
repos_disk_usage() { disk_usage "Repositories" "
|
46
|
+
repos_disk_usage() { disk_usage "Repositories" "repos"; }
|
43
47
|
sources_disk_usage() { disk_usage "Extracted Source Code" "src"; }
|
44
48
|
logs_disk_usage() { disk_usage "Log Files" "log"; }
|
45
49
|
packages_disk_usage() { disk_usage "Packages" "usr"; }
|
data/scripts/docs
CHANGED
@@ -22,7 +22,8 @@ if [[ ! -d "${rvm_docs_path:-"$rvm_path/docs"}" ]] ; then
|
|
22
22
|
|
23
23
|
fi
|
24
24
|
|
25
|
-
usage()
|
25
|
+
usage()
|
26
|
+
{
|
26
27
|
printf "
|
27
28
|
|
28
29
|
Usage:
|
@@ -33,7 +34,8 @@ usage() {
|
|
33
34
|
return 0
|
34
35
|
}
|
35
36
|
|
36
|
-
open_docs()
|
37
|
+
open_docs()
|
38
|
+
{
|
37
39
|
if [[ -s "${rvm_docs_path:-"$rvm_path/docs"}/$rvm_docs_ruby_string/$rvm_docs_type/index.html" ]] ; then
|
38
40
|
|
39
41
|
if command -v open >/dev/null ; then
|
@@ -57,7 +59,8 @@ open_docs() {
|
|
57
59
|
fi
|
58
60
|
}
|
59
61
|
|
60
|
-
generate_ri()
|
62
|
+
generate_ri()
|
63
|
+
{
|
61
64
|
# Generate ri docs
|
62
65
|
(
|
63
66
|
builtin cd "${rvm_src_path:-"$rvm_path/src"}/$rvm_docs_ruby_string/"
|
@@ -70,7 +73,8 @@ generate_ri() {
|
|
70
73
|
)
|
71
74
|
}
|
72
75
|
|
73
|
-
generate_rdoc()
|
76
|
+
generate_rdoc()
|
77
|
+
{
|
74
78
|
(
|
75
79
|
builtin cd "${rvm_src_path:-"$rvm_path/src"}/$rvm_docs_ruby_string/"
|
76
80
|
|
data/scripts/env
CHANGED
@@ -7,7 +7,8 @@ unset GREP_OPTIONS
|
|
7
7
|
|
8
8
|
source "$rvm_path/scripts/base"
|
9
9
|
|
10
|
-
convert_path_to_fish()
|
10
|
+
convert_path_to_fish()
|
11
|
+
{
|
11
12
|
local parts path_parts
|
12
13
|
|
13
14
|
path_part="$1"
|
@@ -23,19 +24,23 @@ end
|
|
23
24
|
return 0
|
24
25
|
}
|
25
26
|
|
26
|
-
convert_unset_to_fish()
|
27
|
+
convert_unset_to_fish()
|
28
|
+
{
|
27
29
|
sed 's#^unset #set -e #'
|
28
30
|
}
|
29
31
|
|
30
|
-
convert_exports_to_fish()
|
32
|
+
convert_exports_to_fish()
|
33
|
+
{
|
31
34
|
sed -e "s#:#' '#g" -e "s#^\\(export \\)\\{0,1\\}\\([^[:space:]]*\\)=#set -x \\2 #"
|
32
35
|
}
|
33
36
|
|
34
|
-
contents_of_environment_file()
|
37
|
+
contents_of_environment_file()
|
38
|
+
{
|
35
39
|
cat "$rvm_path/environments/$(__rvm_environment_identifier)"
|
36
40
|
}
|
37
41
|
|
38
|
-
convert_to_shell()
|
42
|
+
convert_to_shell()
|
43
|
+
{
|
39
44
|
convert_path_to_fish "$(contents_of_environment_file | \grep '^export PATH=')"
|
40
45
|
while read -r shell_line; do
|
41
46
|
if echo "$shell_line" | \grep -q '^unset '; then
|
@@ -47,7 +52,8 @@ convert_to_shell() {
|
|
47
52
|
unset shell_line
|
48
53
|
}
|
49
54
|
|
50
|
-
ensure_has_shell()
|
55
|
+
ensure_has_shell()
|
56
|
+
{
|
51
57
|
for item in "path" "unset" "exports"; do
|
52
58
|
command -v "convert_${item}_to_${1}" >/dev/null || return 1
|
53
59
|
done; unset item
|
data/scripts/fetch
CHANGED
@@ -9,14 +9,13 @@ result=0
|
|
9
9
|
# Set it to cleanup the download on interruption.
|
10
10
|
trap 'cleanup_download' 1 2 3 15
|
11
11
|
|
12
|
-
cleanup_download()
|
13
|
-
|
12
|
+
cleanup_download()
|
13
|
+
{
|
14
14
|
[[ -f "$archive" ]] && rm -f "$archive"
|
15
|
-
|
16
15
|
}
|
17
16
|
|
18
|
-
record_md5()
|
19
|
-
|
17
|
+
record_md5()
|
18
|
+
{
|
20
19
|
if [[ "Darwin" = "$(uname)" ]] || [[ "FreeBSD" = "$(uname)" ]]; then
|
21
20
|
|
22
21
|
archive_md5="$(/sbin/md5 -q "${archive}")"
|
data/scripts/gemsets
CHANGED
@@ -6,7 +6,8 @@ rvm_ruby_gem_home="${rvm_ruby_gem_home:-$GEM_HOME}"
|
|
6
6
|
|
7
7
|
if [[ ! -d "$rvm_ruby_gem_home" ]] && command -v gem > /dev/null 2>&1; then rvm_ruby_gem_home="$(gem env home)" ; fi
|
8
8
|
|
9
|
-
usage()
|
9
|
+
usage()
|
10
|
+
{
|
10
11
|
printf "
|
11
12
|
Usage:
|
12
13
|
|
@@ -23,7 +24,8 @@ usage() {
|
|
23
24
|
"
|
24
25
|
}
|
25
26
|
|
26
|
-
gemset_update()
|
27
|
+
gemset_update()
|
28
|
+
{
|
27
29
|
|
28
30
|
if [[ -z "$rvm_ruby_strings" ]]; then
|
29
31
|
|
@@ -46,8 +48,8 @@ gemset_update() {
|
|
46
48
|
return $?
|
47
49
|
}
|
48
50
|
|
49
|
-
gemset_globalcache()
|
50
|
-
|
51
|
+
gemset_globalcache()
|
52
|
+
{
|
51
53
|
local gc_status globalcache_enabled directories directory_name full_directory_path directory_name
|
52
54
|
|
53
55
|
if [[ "$1" == "enabled" ]]; then
|
@@ -135,19 +137,26 @@ gemset_globalcache() {
|
|
135
137
|
fi
|
136
138
|
}
|
137
139
|
|
138
|
-
gemset_name()
|
140
|
+
gemset_name()
|
141
|
+
{
|
139
142
|
gemset_dir | awk -F${rvm_gemset_separator:-"@"} '{print $2}'
|
140
143
|
return $?
|
141
144
|
}
|
142
145
|
|
143
|
-
gemset_dir()
|
146
|
+
gemset_dir()
|
147
|
+
{
|
144
148
|
echo "$rvm_ruby_gem_home"
|
145
149
|
return $?
|
146
150
|
}
|
147
151
|
|
148
|
-
gemset_create()
|
152
|
+
gemset_create()
|
153
|
+
{
|
149
154
|
local gem_home gemset gemsets prefix
|
150
155
|
|
156
|
+
if [[ -n "$rvm_ruby_string" ]] ; then
|
157
|
+
__rvm_select
|
158
|
+
fi
|
159
|
+
|
151
160
|
prefix=$(echo $rvm_ruby_gem_home | sed 's/'${rvm_gemset_separator:-"@"}'.*$//')
|
152
161
|
|
153
162
|
gemsets=(${args[@]})
|
@@ -155,7 +164,14 @@ gemset_create() {
|
|
155
164
|
for gemset in "${gemsets[@]}" ; do
|
156
165
|
|
157
166
|
if [[ "$gemset" == *"${rvm_gemset_separator:-"@"}"* ]]; then
|
158
|
-
"$rvm_path/scripts/log" "error"
|
167
|
+
"$rvm_path/scripts/log" "error" \
|
168
|
+
"Can not create gemset '$gemset', it contains a \"${rvm_gemset_separator:-"@"}\"."
|
169
|
+
continue
|
170
|
+
fi
|
171
|
+
|
172
|
+
if [[ -z "$gemset" || "$gemset" = *"${rvm_gemset_separator:-"@"}" ]] ; then
|
173
|
+
"$rvm_path/scripts/log" "error" \
|
174
|
+
"Can not create gemset '$gemset', Missing name. "
|
159
175
|
continue
|
160
176
|
fi
|
161
177
|
|
@@ -184,8 +200,8 @@ gemset_create() {
|
|
184
200
|
return 0
|
185
201
|
}
|
186
202
|
|
187
|
-
gemset_list()
|
188
|
-
|
203
|
+
gemset_list()
|
204
|
+
{
|
189
205
|
if [[ ${rvm_ruby_selected_flag:-0} -eq 0 ]] ; then __rvm_select ; fi
|
190
206
|
|
191
207
|
"$rvm_path/scripts/log" "info" \
|
@@ -213,8 +229,8 @@ gemset_list() {
|
|
213
229
|
return 0
|
214
230
|
}
|
215
231
|
|
216
|
-
gemset_delete()
|
217
|
-
|
232
|
+
gemset_delete()
|
233
|
+
{
|
218
234
|
gemsets=(${args[@]})
|
219
235
|
|
220
236
|
if [[ ${rvm_ruby_selected_flag:-0} -eq 0 ]] ; then __rvm_select ; fi
|
@@ -266,8 +282,8 @@ gemset_delete() {
|
|
266
282
|
return 0
|
267
283
|
}
|
268
284
|
|
269
|
-
gemset_empty()
|
270
|
-
|
285
|
+
gemset_empty()
|
286
|
+
{
|
271
287
|
local gemdir
|
272
288
|
|
273
289
|
if [[ -z "${rvm_ruby_gem_home:-""}" ]] ; then __rvm_select ; fi
|
@@ -305,7 +321,8 @@ gemset_empty() {
|
|
305
321
|
}
|
306
322
|
|
307
323
|
# Migrate gemsets from ruby X to ruby Y
|
308
|
-
gemset_copy()
|
324
|
+
gemset_copy()
|
325
|
+
{
|
309
326
|
local source_ruby destination_ruby source_path destination_path
|
310
327
|
|
311
328
|
source_ruby="${args[__array_start]:-""}"
|
@@ -330,12 +347,14 @@ gemset_copy() {
|
|
330
347
|
destination_path="$(rvm_silence_logging=1 rvm "$destination_ruby" gem env gemdir)"
|
331
348
|
|
332
349
|
if [[ -z "$source_path" || ! -d "$source_path" ]]; then
|
333
|
-
"$rvm_path/scripts/log" "error"
|
350
|
+
"$rvm_path/scripts/log" "error" \
|
351
|
+
"Unable to expand '$source_ruby' or directory does not exist."
|
334
352
|
return 1
|
335
353
|
fi
|
336
354
|
|
337
355
|
if [[ -z "$destination_path" ]]; then
|
338
|
-
"$rvm_path/scripts/log" "error"
|
356
|
+
"$rvm_path/scripts/log" "error" \
|
357
|
+
"Unable to expand '$destination_ruby'"
|
339
358
|
return 1
|
340
359
|
fi
|
341
360
|
|
@@ -368,8 +387,8 @@ gemset_copy() {
|
|
368
387
|
fi
|
369
388
|
}
|
370
389
|
|
371
|
-
gemset_unpack()
|
372
|
-
|
390
|
+
gemset_unpack()
|
391
|
+
{
|
373
392
|
local gems name directory version versions
|
374
393
|
|
375
394
|
directory="${args[$__array_start]}"
|
@@ -411,7 +430,8 @@ gemset_unpack() {
|
|
411
430
|
return 0
|
412
431
|
}
|
413
432
|
|
414
|
-
gemset_export()
|
433
|
+
gemset_export()
|
434
|
+
{
|
415
435
|
local gems name file_name version versions
|
416
436
|
|
417
437
|
rvm_file_name="${rvm_file_name:-${gems_args// }}"
|
@@ -461,8 +481,8 @@ gemset_export() {
|
|
461
481
|
return 0
|
462
482
|
}
|
463
483
|
|
464
|
-
gemset_import()
|
465
|
-
|
484
|
+
gemset_import()
|
485
|
+
{
|
466
486
|
unset -f gem
|
467
487
|
|
468
488
|
if [[ -n "${rvm_ruby_gem_home:-""}" ]] ; then
|
@@ -528,8 +548,8 @@ gemset_import() {
|
|
528
548
|
fi
|
529
549
|
}
|
530
550
|
|
531
|
-
__rvm_parse_gems_args()
|
532
|
-
|
551
|
+
__rvm_parse_gems_args()
|
552
|
+
{
|
533
553
|
gem="${gems_args/;*}" ; gem_prefix=""
|
534
554
|
|
535
555
|
if echo "$gems_args" | grep -q ';' ; then
|
@@ -572,8 +592,8 @@ __rvm_parse_gems_args() {
|
|
572
592
|
}
|
573
593
|
|
574
594
|
# Install a gem
|
575
|
-
gem_install()
|
576
|
-
|
595
|
+
gem_install()
|
596
|
+
{
|
577
597
|
local gem gem_prefix gem_name gem_version gem_file_name gem_postfix cache_file gem_file_name gem_string gem_action
|
578
598
|
|
579
599
|
result=0
|
@@ -676,7 +696,8 @@ gem_install() {
|
|
676
696
|
}
|
677
697
|
|
678
698
|
# Output the user's current gem directory.
|
679
|
-
gemset_info()
|
699
|
+
gemset_info()
|
700
|
+
{
|
680
701
|
if [[ ${rvm_user_flag:-0} -eq 1 ]] ; then
|
681
702
|
echo $(rvm system ; gem env | grep "\- $HOME" | awk '{print $NF}')
|
682
703
|
|
@@ -696,7 +717,8 @@ gemset_info() {
|
|
696
717
|
return $?
|
697
718
|
}
|
698
719
|
|
699
|
-
gemset_prune()
|
720
|
+
gemset_prune()
|
721
|
+
{
|
700
722
|
local temporary_cache_path live_cache_path gemset_name version versions cached_gem_name cached_file_path
|
701
723
|
|
702
724
|
temporary_cache_path="$GEM_HOME/temporary-cache"
|
@@ -737,7 +759,8 @@ gemset_prune() {
|
|
737
759
|
return 0
|
738
760
|
}
|
739
761
|
|
740
|
-
gemset_pristine()
|
762
|
+
gemset_pristine()
|
763
|
+
{
|
741
764
|
if ( unset -f gem ; command -v gem > /dev/null ) ; then
|
742
765
|
|
743
766
|
gem pristine --all
|
@@ -754,8 +777,8 @@ gemset_pristine() {
|
|
754
777
|
}
|
755
778
|
|
756
779
|
# Loads the default gemsets for the current interpreter and gemset.
|
757
|
-
gemset_initial()
|
758
|
-
|
780
|
+
gemset_initial()
|
781
|
+
{
|
759
782
|
local gemsets gemset path paths
|
760
783
|
|
761
784
|
rvm_gemsets_path="${rvm_gemsets_path:-"$rvm_path/gemsets"}"
|
@@ -763,8 +786,8 @@ gemset_initial() {
|
|
763
786
|
"$rvm_path/scripts/log" "info" \
|
764
787
|
"Importing initial gemsets for $(__rvm_environment_identifier)."
|
765
788
|
|
766
|
-
if [[ ! -d "$rvm_gemsets_path/${rvm_ruby_string
|
767
|
-
mkdir -p "$rvm_gemsets_path/${rvm_ruby_string
|
789
|
+
if [[ ! -d "$rvm_gemsets_path/${rvm_ruby_string//-//}" ]] ; then
|
790
|
+
mkdir -p "$rvm_gemsets_path/${rvm_ruby_string//-//}" 2>/dev/null
|
768
791
|
fi
|
769
792
|
|
770
793
|
paths=($(__rvm_ruby_string_paths_under "$rvm_gemsets_path"))
|