prebundler 0.11.6 → 0.11.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/lib/prebundler/gem_ref.rb +26 -9
- data/lib/prebundler/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b3aede9a82a409f6be7544d071dc88d550eca1d958eab7b45cdd77d40c4dbd02
|
4
|
+
data.tar.gz: 12e5d87c3ae82b1843c2012be18cb1e5c0c0b123ce15578df4c382968b045f94
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 53c6230c94e22514c3001ed18ca32f74cb627e6ff981004665bc1ca36e6554d2293b442dd0bef7a28fa00a59d7e0caba3498db58460df699cde50c320ce071d4
|
7
|
+
data.tar.gz: df51e8ab2d6927d91481c4232599f1de1b68ed234247ba9b2e5714189072b1bde36bcc4751ebaf825f5661f5f74c302f7d3d8f8e6ede13c4deb8eeb202215b00
|
data/CHANGELOG.md
CHANGED
data/lib/prebundler/gem_ref.rb
CHANGED
@@ -73,8 +73,10 @@ module Prebundler
|
|
73
73
|
system "tar -C #{bundle_path} -rf #{tar_file} #{relative_extension_dir}"
|
74
74
|
end
|
75
75
|
|
76
|
-
|
77
|
-
|
76
|
+
gemspecs.each do |gemspec|
|
77
|
+
gemspec.executables.each do |executable|
|
78
|
+
system "tar -C #{bundle_path} -rf #{tar_file} #{File.join(relative_gem_dir, gemspec.bindir, executable)}"
|
79
|
+
end
|
78
80
|
end
|
79
81
|
end
|
80
82
|
|
@@ -105,7 +107,13 @@ module Prebundler
|
|
105
107
|
end
|
106
108
|
|
107
109
|
def install_dir
|
108
|
-
|
110
|
+
@install_dir ||= begin
|
111
|
+
base = File.join(install_path, id)
|
112
|
+
|
113
|
+
find_platform_dir(base) do |dir|
|
114
|
+
File.directory?(dir)
|
115
|
+
end
|
116
|
+
end
|
109
117
|
end
|
110
118
|
|
111
119
|
def extension_dir
|
@@ -119,14 +127,10 @@ module Prebundler
|
|
119
127
|
def relative_gem_dir
|
120
128
|
@relative_gem_dir ||= begin
|
121
129
|
base = File.join('gems', id)
|
122
|
-
platform = Bundler.local_platform.to_a
|
123
130
|
|
124
|
-
|
125
|
-
|
126
|
-
return dir if File.directory?(File.join(bundle_path, dir))
|
131
|
+
find_platform_dir(base) do |dir|
|
132
|
+
File.directory?(File.join(bundle_path, dir))
|
127
133
|
end
|
128
|
-
|
129
|
-
base
|
130
134
|
end
|
131
135
|
end
|
132
136
|
|
@@ -140,5 +144,18 @@ module Prebundler
|
|
140
144
|
file = File.join(Bundler.local_platform.to_s, Prebundler.platform_version, Gem.extension_api_version.to_s, "#{id}.tar")
|
141
145
|
prefix && !prefix.empty? ? File.join(prefix, file) : file
|
142
146
|
end
|
147
|
+
|
148
|
+
private
|
149
|
+
|
150
|
+
def find_platform_dir(base)
|
151
|
+
platform = Bundler.local_platform.to_a
|
152
|
+
|
153
|
+
platform.size.downto(0) do |i|
|
154
|
+
dir = [base, *platform[0...i]].join('-')
|
155
|
+
return dir if yield(dir)
|
156
|
+
end
|
157
|
+
|
158
|
+
base
|
159
|
+
end
|
143
160
|
end
|
144
161
|
end
|
data/lib/prebundler/version.rb
CHANGED