fig18 0.1.48-i386-mswin32 → 0.1.49-i386-mswin32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Changes +47 -2
- data/LICENSE +2 -2
- data/README.md +3 -3
- data/VERSION +1 -1
- data/lib/fig/applicationconfiguration.rb +1 -1
- data/lib/fig/environment.rb +84 -24
- data/lib/fig/options.rb +5 -5
- data/lib/fig/os.rb +13 -13
- data/lib/fig/package.rb +6 -4
- data/lib/fig/repository.rb +2 -8
- data/lib/fig.rb +22 -15
- metadata +124 -5
data/Changes
CHANGED
@@ -1,11 +1,56 @@
|
|
1
|
-
v0.1.
|
1
|
+
v0.1.49
|
2
|
+
|
3
|
+
- Finalizing figrc name for URL whitelist.
|
4
|
+
|
5
|
+
v0.1.47-48
|
6
|
+
|
7
|
+
- Exception, regex, and test refactoring.
|
8
|
+
|
9
|
+
- Fixing operator precedence in environment.
|
10
|
+
|
11
|
+
- Updated copyright years.
|
12
|
+
|
13
|
+
- Changed README example to use file:// URL.
|
14
|
+
|
15
|
+
- Change ssh:// tests to file:// tests.
|
16
|
+
|
17
|
+
- Refactored '[package]' substitution.
|
18
|
+
|
19
|
+
- Implemented @ escaping in variables.
|
20
|
+
|
21
|
+
v0.1.46
|
22
|
+
|
23
|
+
- Rakefile improvements.
|
24
|
+
|
25
|
+
- Fixing broken reference to Fig::Logging in environment.rb.
|
2
26
|
|
3
|
-
|
27
|
+
|
28
|
+
v0.1.43-0.1.45
|
29
|
+
|
30
|
+
- Rakefile improvements.
|
31
|
+
|
32
|
+
- Test file refactoring/improvements.
|
4
33
|
|
5
34
|
- Complains if it has nothing to do.
|
6
35
|
|
36
|
+
v0.1.42
|
37
|
+
|
38
|
+
- Fig::Package refactoring.
|
39
|
+
|
40
|
+
- "file:" protocol works for FIG_REMOTE_HOME.
|
41
|
+
|
7
42
|
- Testing no longer requires ssh.
|
8
43
|
|
44
|
+
- Implemented whitelist chceking after parse.
|
45
|
+
|
46
|
+
- Simplify character classes in grammar, slight grammar refactoring.
|
47
|
+
|
48
|
+
- Supports MacOS (better) in Rakefile.
|
49
|
+
|
50
|
+
- No longer emits stack trace for invalid command line option(s).
|
51
|
+
|
52
|
+
- Tests emits std(out|err) on failure, for ease in debugging test failures.
|
53
|
+
|
9
54
|
|
10
55
|
v0.1.41
|
11
56
|
|
data/LICENSE
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
Copyright (c) 2009, Matthew Foemmel
|
1
|
+
Copyright (c) 2009-2011, Matthew Foemmel
|
2
2
|
All rights reserved.
|
3
3
|
|
4
4
|
Redistribution and use in source and binary forms, with or without
|
@@ -24,4 +24,4 @@ DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
24
24
|
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
25
25
|
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
26
26
|
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
27
|
-
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
27
|
+
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
data/README.md
CHANGED
@@ -200,9 +200,9 @@ A config section can be included in another config section:
|
|
200
200
|
Let's share our little script with the rest of the team by bundling it into a
|
201
201
|
package and publishing it. First, point the `FIG_REMOTE_URL` environment
|
202
202
|
variable to the remote repository. If you just want to play around with fig,
|
203
|
-
you can have it point to
|
203
|
+
you can have it point to a local directory:
|
204
204
|
|
205
|
-
$ export FIG_REMOTE_URL=
|
205
|
+
$ export FIG_REMOTE_URL=file://$(pwd)/remote
|
206
206
|
|
207
207
|
Before we publish our package, we'll need to tell fig which files we want to include. We do this by using the "resource" statement in our "package.fig" file:
|
208
208
|
|
@@ -283,4 +283,4 @@ Community
|
|
283
283
|
Copyright
|
284
284
|
=========
|
285
285
|
|
286
|
-
Copyright (c) 2009 Matthew Foemmel. See LICENSE for details.
|
286
|
+
Copyright (c) 2009-2011 Matthew Foemmel. See LICENSE for details.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.49
|
data/lib/fig/environment.rb
CHANGED
@@ -30,7 +30,6 @@ module Fig
|
|
30
30
|
end
|
31
31
|
|
32
32
|
# Indicates that the values from a particular envrionment variable path
|
33
|
-
|
34
33
|
def add_retrieve(name, path)
|
35
34
|
@retrieve_vars[name] = path
|
36
35
|
end
|
@@ -57,18 +56,27 @@ module Fig
|
|
57
56
|
|
58
57
|
def execute_shell(command)
|
59
58
|
with_environment do
|
60
|
-
yield command.map{|arg|
|
59
|
+
yield command.map{|arg| expand_command_line_argument(arg)}
|
61
60
|
end
|
62
61
|
end
|
63
62
|
|
64
63
|
def execute_config(base_package, package_name, config_name, version_name, args)
|
65
|
-
package = lookup_package(
|
64
|
+
package = lookup_package(
|
65
|
+
package_name || base_package.package_name,
|
66
|
+
version_name,
|
67
|
+
Backtrace.new(nil, package_name, version_name, config_name)
|
68
|
+
)
|
66
69
|
result = nil
|
67
70
|
commands = package[config_name || 'default'].commands
|
68
71
|
with_environment do
|
69
72
|
# TODO nil check
|
70
73
|
commands.each do |command|
|
71
|
-
|
74
|
+
argument =
|
75
|
+
expand_command_line_argument(
|
76
|
+
"#{command.command} #{args.join(' ')}"
|
77
|
+
)
|
78
|
+
|
79
|
+
result = yield expand_path(argument, package).split(' ')
|
72
80
|
end
|
73
81
|
end
|
74
82
|
result
|
@@ -114,11 +122,11 @@ module Fig
|
|
114
122
|
private
|
115
123
|
|
116
124
|
def set_variable(base_package, name, value)
|
117
|
-
@variables[name] =
|
125
|
+
@variables[name] = expand_and_retrieve_variable_value(base_package, name, value)
|
118
126
|
end
|
119
127
|
|
120
128
|
def append_variable(base_package, name, value)
|
121
|
-
value =
|
129
|
+
value = expand_and_retrieve_variable_value(base_package, name, value)
|
122
130
|
# TODO: converting all environment variables to upcase is not a robust
|
123
131
|
# comparison. It also assumes all env vars will be in upcase
|
124
132
|
# in package.fig
|
@@ -165,28 +173,25 @@ module Fig
|
|
165
173
|
package
|
166
174
|
end
|
167
175
|
|
168
|
-
# Replace @ symbol with the package's directory
|
169
|
-
|
176
|
+
# Replace @ symbol with the package's directory, "[package]" with the
|
177
|
+
# package name.
|
178
|
+
def expand_and_retrieve_variable_value(base_package, name, value)
|
170
179
|
return value unless base_package && base_package.package_name
|
171
|
-
|
180
|
+
|
181
|
+
file = expand_path(value, base_package)
|
182
|
+
|
172
183
|
if @retrieve_vars.member?(name)
|
173
184
|
# A '//' in the source file's path tells us to preserve path
|
174
185
|
# information after the '//' when doing a retrieve.
|
175
186
|
if file.split('//').size > 1
|
176
187
|
preserved_path = file.split('//').last
|
177
188
|
target = File.join(
|
178
|
-
|
179
|
-
/\[package\]/,
|
180
|
-
base_package.package_name
|
181
|
-
),
|
189
|
+
translate_retrieve_variables(base_package, name),
|
182
190
|
preserved_path
|
183
191
|
)
|
184
192
|
else
|
185
193
|
target = File.join(
|
186
|
-
|
187
|
-
/\[package\]/,
|
188
|
-
base_package.package_name
|
189
|
-
)
|
194
|
+
translate_retrieve_variables(base_package, name)
|
190
195
|
)
|
191
196
|
if not File.directory?(file)
|
192
197
|
target = File.join(target, File.basename(file))
|
@@ -199,18 +204,73 @@ module Fig
|
|
199
204
|
end
|
200
205
|
file = target
|
201
206
|
end
|
202
|
-
file
|
207
|
+
return file
|
208
|
+
end
|
209
|
+
|
210
|
+
def expand_path(path, base_package)
|
211
|
+
expanded_path = expand_at_sign_package_references(path, base_package)
|
212
|
+
check_for_bad_escape(expanded_path, path)
|
213
|
+
return expanded_path.gsub(%r< \\ ([\\@]) >x, '\1')
|
203
214
|
end
|
204
215
|
|
205
|
-
def
|
206
|
-
arg.gsub(
|
207
|
-
|
216
|
+
def expand_at_sign_package_references(arg, base_package)
|
217
|
+
return arg.gsub(
|
218
|
+
%r<
|
219
|
+
(?: ^ | \G) # Zero-width anchor.
|
220
|
+
( [^\\@]* (?:\\{2})*) # An even number of leading backslashes
|
221
|
+
\@ # The package indicator
|
222
|
+
>x
|
223
|
+
) do |match|
|
224
|
+
backslashes = $1 || ''
|
225
|
+
backslashes + base_package.directory
|
226
|
+
end
|
227
|
+
end
|
228
|
+
|
229
|
+
def expand_command_line_argument(arg)
|
230
|
+
package_substituted = expand_named_package_references(arg)
|
231
|
+
check_for_bad_escape(package_substituted, arg)
|
232
|
+
|
233
|
+
return package_substituted.gsub(%r< \\ ([\\@]) >x, '\1')
|
234
|
+
end
|
235
|
+
|
236
|
+
def expand_named_package_references(arg)
|
237
|
+
return arg.gsub(
|
238
|
+
%r<
|
239
|
+
(?: ^ | \G) # Zero-width anchor.
|
240
|
+
( [^\\@]* (?:\\{2})*) # An even number of leading backslashes
|
241
|
+
\@ # The package indicator
|
242
|
+
( [a-zA-Z0-9.-]+ ) # Package name
|
243
|
+
>x
|
244
|
+
) do |match|
|
245
|
+
backslashes = $1 || ''
|
246
|
+
package = @packages[$2]
|
208
247
|
if package.nil?
|
209
|
-
|
210
|
-
raise RepositoryError.new
|
248
|
+
raise RepositoryError.new "Package not found: #{$1}"
|
211
249
|
end
|
212
|
-
package.directory
|
250
|
+
backslashes + package.directory
|
213
251
|
end
|
214
252
|
end
|
253
|
+
|
254
|
+
# The value is expected to have had any @ substitution already done, but
|
255
|
+
# collapsing of escapes not done yet.
|
256
|
+
def check_for_bad_escape(substituted, original)
|
257
|
+
if substituted =~ %r<
|
258
|
+
(?: ^ | [^\\]) # Start of line or non backslash
|
259
|
+
(?: \\{2})* # Even number of backslashes (including zero)
|
260
|
+
( \\ [^\\@] ) # A bad escape
|
261
|
+
>x
|
262
|
+
raise RepositoryError.new(
|
263
|
+
%Q<Unknown escape "#{$1}" in "#{original}">
|
264
|
+
)
|
265
|
+
end
|
266
|
+
end
|
267
|
+
|
268
|
+
def translate_retrieve_variables(base_package, name)
|
269
|
+
return \
|
270
|
+
@retrieve_vars[name].gsub(
|
271
|
+
/ \[package\] /x,
|
272
|
+
base_package.package_name
|
273
|
+
)
|
274
|
+
end
|
215
275
|
end
|
216
276
|
end
|
data/lib/fig/options.rb
CHANGED
@@ -101,12 +101,12 @@ EOF
|
|
101
101
|
options[:debug] = true
|
102
102
|
end
|
103
103
|
|
104
|
-
options[:
|
104
|
+
options[:package_config_file] = nil
|
105
105
|
opts.on(
|
106
106
|
'--file FILE',
|
107
107
|
%q<read fig file FILE. Use '-' for stdin. See also --no-file>
|
108
108
|
) do |path|
|
109
|
-
options[:
|
109
|
+
options[:package_config_file] = path
|
110
110
|
end
|
111
111
|
|
112
112
|
options[:force] = nil
|
@@ -162,7 +162,7 @@ EOF
|
|
162
162
|
opts.on(
|
163
163
|
'--no-file', 'ignore package.fig file in current directory'
|
164
164
|
) do |path|
|
165
|
-
options[:
|
165
|
+
options[:package_config_file] = :none
|
166
166
|
end
|
167
167
|
|
168
168
|
options[:publish] = nil
|
@@ -200,7 +200,7 @@ EOF
|
|
200
200
|
'--update',
|
201
201
|
'check remote repo for updates and download to $FIG_HOME as necessary'
|
202
202
|
) do
|
203
|
-
options[:update] = true
|
203
|
+
options[:update] = true
|
204
204
|
end
|
205
205
|
|
206
206
|
options[:update_if_missing] = false
|
@@ -209,7 +209,7 @@ EOF
|
|
209
209
|
'--update-if-missing',
|
210
210
|
'check remote repo for updates only if package missing from $FIG_HOME'
|
211
211
|
) do
|
212
|
-
options[:update_if_missing] = true
|
212
|
+
options[:update_if_missing] = true
|
213
213
|
end
|
214
214
|
|
215
215
|
opts.on(
|
data/lib/fig/os.rb
CHANGED
@@ -48,18 +48,10 @@ module Fig
|
|
48
48
|
Dir.entries(dir) - ['.','..']
|
49
49
|
end
|
50
50
|
|
51
|
-
def exist?(path)
|
52
|
-
File.exist?(path)
|
53
|
-
end
|
54
|
-
|
55
51
|
def mtime(path)
|
56
52
|
File.mtime(path)
|
57
53
|
end
|
58
54
|
|
59
|
-
def read(path)
|
60
|
-
File.read(path)
|
61
|
-
end
|
62
|
-
|
63
55
|
def write(path, content)
|
64
56
|
File.open(path, 'wb') { |f| f.binmode; f << content }
|
65
57
|
end
|
@@ -132,7 +124,10 @@ module Fig
|
|
132
124
|
packages << pkg + '/' + ver
|
133
125
|
end
|
134
126
|
rescue Net::FTPPermError
|
135
|
-
#
|
127
|
+
# Ignore this error because it's indicative of the FTP library encountering a file
|
128
|
+
# or directory that it does not have permission to open.
|
129
|
+
# Fig needs to be able to have secure repos/packages
|
130
|
+
# and there is no way easy way to deal with the permissions issues other than consuming these errors.
|
136
131
|
end
|
137
132
|
pos += num_threads
|
138
133
|
end
|
@@ -148,9 +143,10 @@ module Fig
|
|
148
143
|
uri = URI.parse(url)
|
149
144
|
case uri.scheme
|
150
145
|
when 'ftp'
|
151
|
-
ftp = Net::FTP.new(uri.host)
|
152
|
-
ftp_login(ftp, uri.host)
|
153
146
|
begin
|
147
|
+
ftp = Net::FTP.new(uri.host)
|
148
|
+
ftp_login(ftp, uri.host)
|
149
|
+
|
154
150
|
if File.exist?(path) && ftp.mtime(uri.path) <= File.mtime(path)
|
155
151
|
Logging.debug "#{path} is up to date."
|
156
152
|
return false
|
@@ -159,8 +155,11 @@ module Fig
|
|
159
155
|
ftp.getbinaryfile(uri.path, path, 256*1024)
|
160
156
|
return true
|
161
157
|
end
|
162
|
-
rescue Net::FTPPermError =>
|
163
|
-
Logging.warn
|
158
|
+
rescue Net::FTPPermError => error
|
159
|
+
Logging.warn error.message
|
160
|
+
raise NotFoundError.new
|
161
|
+
rescue SocketError => error
|
162
|
+
Logging.warn error.message
|
164
163
|
raise NotFoundError.new
|
165
164
|
end
|
166
165
|
when 'http'
|
@@ -182,6 +181,7 @@ module Fig
|
|
182
181
|
when 'file'
|
183
182
|
begin
|
184
183
|
FileUtils.cp(uri.path, path)
|
184
|
+
return true
|
185
185
|
rescue Errno::ENOENT => e
|
186
186
|
raise NotFoundError.new
|
187
187
|
end
|
data/lib/fig/package.rb
CHANGED
@@ -12,8 +12,8 @@ class Fig::Package
|
|
12
12
|
attr_accessor :backtrace
|
13
13
|
|
14
14
|
def initialize(package_name, version_name, directory, statements)
|
15
|
-
@package_name = package_name
|
16
|
-
@version_name = version_name
|
15
|
+
@package_name = package_name || 'uninitialized'
|
16
|
+
@version_name = version_name || 'default'
|
17
17
|
@directory = directory
|
18
18
|
@statements = statements
|
19
19
|
@backtrace = nil
|
@@ -23,8 +23,10 @@ class Fig::Package
|
|
23
23
|
@statements.each do |stmt|
|
24
24
|
return stmt if stmt.is_a?(Configuration) && stmt.name == config_name
|
25
25
|
end
|
26
|
-
|
27
|
-
|
26
|
+
message =
|
27
|
+
"Configuration not found: #{@package_name}/#{@version_name}:#{config_name}"
|
28
|
+
Fig::Logging.fatal message
|
29
|
+
raise Fig::PackageError.new message
|
28
30
|
end
|
29
31
|
|
30
32
|
def configs
|
data/lib/fig/repository.rb
CHANGED
@@ -142,12 +142,6 @@ module Fig
|
|
142
142
|
read_package_from_directory(dir, package_name, version_name)
|
143
143
|
end
|
144
144
|
|
145
|
-
def read_remote_package(package_name, version_name)
|
146
|
-
url = remote_fig_file_for_package(package_name, version_name)
|
147
|
-
content = @os.read_url(url)
|
148
|
-
return @parser.parse_package(package_name, version_name, nil, content)
|
149
|
-
end
|
150
|
-
|
151
145
|
def read_package_from_directory(dir, package_name, version_name)
|
152
146
|
file = File.join(dir, '.fig')
|
153
147
|
if not File.exist?(file)
|
@@ -161,11 +155,11 @@ module Fig
|
|
161
155
|
end
|
162
156
|
|
163
157
|
def read_package_from_file(file_name, package_name, version_name)
|
164
|
-
if not
|
158
|
+
if not File.exist?(file_name)
|
165
159
|
Logging.fatal "Package not found: #{package_name}/#{version_name}"
|
166
160
|
raise RepositoryError.new
|
167
161
|
end
|
168
|
-
content =
|
162
|
+
content = File.read(file_name)
|
169
163
|
return @parser.parse_package(package_name, version_name, File.dirname(file_name), content)
|
170
164
|
end
|
171
165
|
|
data/lib/fig.rb
CHANGED
@@ -79,7 +79,7 @@ module Fig
|
|
79
79
|
options[:update_if_missing]
|
80
80
|
)
|
81
81
|
retriever = Retriever.new('.')
|
82
|
-
|
82
|
+
# Check to see if this is still happening with the new layers of abstraction.
|
83
83
|
at_exit { retriever.save }
|
84
84
|
env = Environment.new(os, repos, vars, retriever)
|
85
85
|
|
@@ -87,18 +87,18 @@ module Fig
|
|
87
87
|
env.apply_config_statement(nil, modifier, nil)
|
88
88
|
end
|
89
89
|
|
90
|
-
|
91
|
-
if options[:
|
90
|
+
package_config_file = nil
|
91
|
+
if options[:package_config_file] == :none
|
92
92
|
# ignore
|
93
|
-
elsif options[:
|
94
|
-
|
95
|
-
elsif options[:
|
96
|
-
|
93
|
+
elsif options[:package_config_file] == '-'
|
94
|
+
package_config_file = $stdin.read
|
95
|
+
elsif options[:package_config_file].nil?
|
96
|
+
package_config_file = File.read(DEFAULT_FIG_FILE) if File.exist?(DEFAULT_FIG_FILE)
|
97
97
|
else
|
98
|
-
if
|
99
|
-
|
98
|
+
if File.exist?(options[:package_config_file])
|
99
|
+
package_config_file = File.read(options[:package_config_file])
|
100
100
|
else
|
101
|
-
$stderr.puts %Q<File not found: "#{options[:
|
101
|
+
$stderr.puts %Q<File not found: "#{options[:package_config_file]}".>
|
102
102
|
return 1
|
103
103
|
end
|
104
104
|
end
|
@@ -131,12 +131,12 @@ module Fig
|
|
131
131
|
return 0
|
132
132
|
end
|
133
133
|
|
134
|
-
if
|
135
|
-
package = Parser.new(configuration).parse_package(nil, nil, '.',
|
134
|
+
if package_config_file
|
135
|
+
package = Parser.new(configuration).parse_package(nil, nil, '.', package_config_file)
|
136
136
|
direct_retrieves=[]
|
137
|
-
if options[:
|
137
|
+
if options[:update] || options[:update_if_missing]
|
138
138
|
package.retrieves.each do |var, path|
|
139
|
-
if var =~
|
139
|
+
if var =~ %r< ^ \@ ([^/]+) (.*) >x
|
140
140
|
direct_retrieves << [$1, $2, path]
|
141
141
|
else
|
142
142
|
env.add_retrieve(var, path)
|
@@ -219,13 +219,20 @@ module Fig
|
|
219
219
|
rescue UserInputError => exception
|
220
220
|
# If there's no message, we assume that the cause has already been logged.
|
221
221
|
if not exception_has_message?(exception)
|
222
|
-
|
222
|
+
Logging.fatal exception.to_s
|
223
223
|
end
|
224
224
|
|
225
225
|
return 1
|
226
226
|
rescue OptionParser::InvalidOption => exception
|
227
227
|
$stderr.puts exception.to_s
|
228
228
|
$stderr.puts USAGE
|
229
|
+
return 1
|
230
|
+
rescue RepositoryError => error
|
231
|
+
# If there's no message, we assume that the cause has already been logged.
|
232
|
+
if not exception_has_message?(error)
|
233
|
+
Logging.fatal error.to_s
|
234
|
+
end
|
235
|
+
|
229
236
|
return 1
|
230
237
|
end
|
231
238
|
end
|
metadata
CHANGED
@@ -1,8 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fig18
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
|
4
|
+
hash: 121
|
5
|
+
prerelease: false
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 1
|
9
|
+
- 49
|
10
|
+
version: 0.1.49
|
6
11
|
platform: i386-mswin32
|
7
12
|
authors:
|
8
13
|
- Matthew Foemmel
|
@@ -10,7 +15,8 @@ autorequire:
|
|
10
15
|
bindir: bin
|
11
16
|
cert_chain: []
|
12
17
|
|
13
|
-
date: 2011-
|
18
|
+
date: 2011-12-02 00:00:00 -06:00
|
19
|
+
default_executable:
|
14
20
|
dependencies:
|
15
21
|
- !ruby/object:Gem::Dependency
|
16
22
|
name: libarchive-static-ruby186
|
@@ -20,6 +26,11 @@ dependencies:
|
|
20
26
|
requirements:
|
21
27
|
- - ">="
|
22
28
|
- !ruby/object:Gem::Version
|
29
|
+
hash: 23
|
30
|
+
segments:
|
31
|
+
- 1
|
32
|
+
- 0
|
33
|
+
- 0
|
23
34
|
version: 1.0.0
|
24
35
|
type: :runtime
|
25
36
|
version_requirements: *id001
|
@@ -31,6 +42,11 @@ dependencies:
|
|
31
42
|
requirements:
|
32
43
|
- - ">="
|
33
44
|
- !ruby/object:Gem::Version
|
45
|
+
hash: 11
|
46
|
+
segments:
|
47
|
+
- 1
|
48
|
+
- 6
|
49
|
+
- 2
|
34
50
|
version: 1.6.2
|
35
51
|
type: :runtime
|
36
52
|
version_requirements: *id002
|
@@ -42,6 +58,11 @@ dependencies:
|
|
42
58
|
requirements:
|
43
59
|
- - ">="
|
44
60
|
- !ruby/object:Gem::Version
|
61
|
+
hash: 25
|
62
|
+
segments:
|
63
|
+
- 1
|
64
|
+
- 1
|
65
|
+
- 5
|
45
66
|
version: 1.1.5
|
46
67
|
type: :runtime
|
47
68
|
version_requirements: *id003
|
@@ -53,6 +74,11 @@ dependencies:
|
|
53
74
|
requirements:
|
54
75
|
- - ">="
|
55
76
|
- !ruby/object:Gem::Version
|
77
|
+
hash: 19
|
78
|
+
segments:
|
79
|
+
- 0
|
80
|
+
- 2
|
81
|
+
- 2
|
56
82
|
version: 0.2.2
|
57
83
|
type: :runtime
|
58
84
|
version_requirements: *id004
|
@@ -64,6 +90,11 @@ dependencies:
|
|
64
90
|
requirements:
|
65
91
|
- - ">="
|
66
92
|
- !ruby/object:Gem::Version
|
93
|
+
hash: 7
|
94
|
+
segments:
|
95
|
+
- 2
|
96
|
+
- 0
|
97
|
+
- 4
|
67
98
|
version: 2.0.4
|
68
99
|
type: :runtime
|
69
100
|
version_requirements: *id005
|
@@ -75,6 +106,11 @@ dependencies:
|
|
75
106
|
requirements:
|
76
107
|
- - ">="
|
77
108
|
- !ruby/object:Gem::Version
|
109
|
+
hash: 17
|
110
|
+
segments:
|
111
|
+
- 2
|
112
|
+
- 0
|
113
|
+
- 15
|
78
114
|
version: 2.0.15
|
79
115
|
type: :runtime
|
80
116
|
version_requirements: *id006
|
@@ -86,6 +122,11 @@ dependencies:
|
|
86
122
|
requirements:
|
87
123
|
- - ">="
|
88
124
|
- !ruby/object:Gem::Version
|
125
|
+
hash: 5
|
126
|
+
segments:
|
127
|
+
- 0
|
128
|
+
- 2
|
129
|
+
- 9
|
89
130
|
version: 0.2.9
|
90
131
|
type: :runtime
|
91
132
|
version_requirements: *id007
|
@@ -97,6 +138,11 @@ dependencies:
|
|
97
138
|
requirements:
|
98
139
|
- - ">="
|
99
140
|
- !ruby/object:Gem::Version
|
141
|
+
hash: 27
|
142
|
+
segments:
|
143
|
+
- 2
|
144
|
+
- 4
|
145
|
+
- 2
|
100
146
|
version: 2.4.2
|
101
147
|
type: :runtime
|
102
148
|
version_requirements: *id008
|
@@ -108,6 +154,11 @@ dependencies:
|
|
108
154
|
requirements:
|
109
155
|
- - ">="
|
110
156
|
- !ruby/object:Gem::Version
|
157
|
+
hash: 3
|
158
|
+
segments:
|
159
|
+
- 1
|
160
|
+
- 4
|
161
|
+
- 2
|
111
162
|
version: 1.4.2
|
112
163
|
type: :runtime
|
113
164
|
version_requirements: *id009
|
@@ -119,6 +170,11 @@ dependencies:
|
|
119
170
|
requirements:
|
120
171
|
- - ">="
|
121
172
|
- !ruby/object:Gem::Version
|
173
|
+
hash: 21
|
174
|
+
segments:
|
175
|
+
- 1
|
176
|
+
- 0
|
177
|
+
- 1
|
122
178
|
version: 1.0.1
|
123
179
|
type: :development
|
124
180
|
version_requirements: *id010
|
@@ -130,6 +186,9 @@ dependencies:
|
|
130
186
|
requirements:
|
131
187
|
- - ~>
|
132
188
|
- !ruby/object:Gem::Version
|
189
|
+
hash: 7
|
190
|
+
segments:
|
191
|
+
- 2
|
133
192
|
version: "2"
|
134
193
|
type: :development
|
135
194
|
version_requirements: *id011
|
@@ -141,6 +200,11 @@ dependencies:
|
|
141
200
|
requirements:
|
142
201
|
- - ">="
|
143
202
|
- !ruby/object:Gem::Version
|
203
|
+
hash: 23
|
204
|
+
segments:
|
205
|
+
- 1
|
206
|
+
- 0
|
207
|
+
- 0
|
144
208
|
version: 1.0.0
|
145
209
|
type: :runtime
|
146
210
|
version_requirements: *id012
|
@@ -152,6 +216,11 @@ dependencies:
|
|
152
216
|
requirements:
|
153
217
|
- - ">="
|
154
218
|
- !ruby/object:Gem::Version
|
219
|
+
hash: 11
|
220
|
+
segments:
|
221
|
+
- 1
|
222
|
+
- 6
|
223
|
+
- 2
|
155
224
|
version: 1.6.2
|
156
225
|
type: :runtime
|
157
226
|
version_requirements: *id013
|
@@ -163,6 +232,11 @@ dependencies:
|
|
163
232
|
requirements:
|
164
233
|
- - ">="
|
165
234
|
- !ruby/object:Gem::Version
|
235
|
+
hash: 25
|
236
|
+
segments:
|
237
|
+
- 1
|
238
|
+
- 1
|
239
|
+
- 5
|
166
240
|
version: 1.1.5
|
167
241
|
type: :runtime
|
168
242
|
version_requirements: *id014
|
@@ -174,6 +248,11 @@ dependencies:
|
|
174
248
|
requirements:
|
175
249
|
- - ">="
|
176
250
|
- !ruby/object:Gem::Version
|
251
|
+
hash: 19
|
252
|
+
segments:
|
253
|
+
- 0
|
254
|
+
- 2
|
255
|
+
- 2
|
177
256
|
version: 0.2.2
|
178
257
|
type: :runtime
|
179
258
|
version_requirements: *id015
|
@@ -185,6 +264,11 @@ dependencies:
|
|
185
264
|
requirements:
|
186
265
|
- - ">="
|
187
266
|
- !ruby/object:Gem::Version
|
267
|
+
hash: 7
|
268
|
+
segments:
|
269
|
+
- 2
|
270
|
+
- 0
|
271
|
+
- 4
|
188
272
|
version: 2.0.4
|
189
273
|
type: :runtime
|
190
274
|
version_requirements: *id016
|
@@ -196,6 +280,11 @@ dependencies:
|
|
196
280
|
requirements:
|
197
281
|
- - ">="
|
198
282
|
- !ruby/object:Gem::Version
|
283
|
+
hash: 17
|
284
|
+
segments:
|
285
|
+
- 2
|
286
|
+
- 0
|
287
|
+
- 15
|
199
288
|
version: 2.0.15
|
200
289
|
type: :runtime
|
201
290
|
version_requirements: *id017
|
@@ -207,6 +296,11 @@ dependencies:
|
|
207
296
|
requirements:
|
208
297
|
- - ">="
|
209
298
|
- !ruby/object:Gem::Version
|
299
|
+
hash: 5
|
300
|
+
segments:
|
301
|
+
- 0
|
302
|
+
- 2
|
303
|
+
- 9
|
210
304
|
version: 0.2.9
|
211
305
|
type: :runtime
|
212
306
|
version_requirements: *id018
|
@@ -218,6 +312,11 @@ dependencies:
|
|
218
312
|
requirements:
|
219
313
|
- - ">="
|
220
314
|
- !ruby/object:Gem::Version
|
315
|
+
hash: 27
|
316
|
+
segments:
|
317
|
+
- 2
|
318
|
+
- 4
|
319
|
+
- 2
|
221
320
|
version: 2.4.2
|
222
321
|
type: :runtime
|
223
322
|
version_requirements: *id019
|
@@ -229,6 +328,11 @@ dependencies:
|
|
229
328
|
requirements:
|
230
329
|
- - ">="
|
231
330
|
- !ruby/object:Gem::Version
|
331
|
+
hash: 3
|
332
|
+
segments:
|
333
|
+
- 1
|
334
|
+
- 4
|
335
|
+
- 2
|
232
336
|
version: 1.4.2
|
233
337
|
type: :runtime
|
234
338
|
version_requirements: *id020
|
@@ -240,6 +344,11 @@ dependencies:
|
|
240
344
|
requirements:
|
241
345
|
- - ">="
|
242
346
|
- !ruby/object:Gem::Version
|
347
|
+
hash: 21
|
348
|
+
segments:
|
349
|
+
- 1
|
350
|
+
- 0
|
351
|
+
- 1
|
243
352
|
version: 1.0.1
|
244
353
|
type: :development
|
245
354
|
version_requirements: *id021
|
@@ -251,6 +360,9 @@ dependencies:
|
|
251
360
|
requirements:
|
252
361
|
- - ~>
|
253
362
|
- !ruby/object:Gem::Version
|
363
|
+
hash: 7
|
364
|
+
segments:
|
365
|
+
- 2
|
254
366
|
version: "2"
|
255
367
|
type: :development
|
256
368
|
version_requirements: *id022
|
@@ -305,6 +417,7 @@ files:
|
|
305
417
|
- lib/fig/windows.rb
|
306
418
|
- LICENSE
|
307
419
|
- README.md
|
420
|
+
has_rdoc: true
|
308
421
|
homepage: http://github.com/mfoemmel/fig
|
309
422
|
licenses: []
|
310
423
|
|
@@ -318,19 +431,25 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
318
431
|
requirements:
|
319
432
|
- - ">="
|
320
433
|
- !ruby/object:Gem::Version
|
434
|
+
hash: 3
|
435
|
+
segments:
|
436
|
+
- 0
|
321
437
|
version: "0"
|
322
438
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
323
439
|
none: false
|
324
440
|
requirements:
|
325
441
|
- - ">="
|
326
442
|
- !ruby/object:Gem::Version
|
443
|
+
hash: 3
|
444
|
+
segments:
|
445
|
+
- 0
|
327
446
|
version: "0"
|
328
447
|
requirements: []
|
329
448
|
|
330
449
|
rubyforge_project:
|
331
|
-
rubygems_version: 1.
|
450
|
+
rubygems_version: 1.3.7
|
332
451
|
signing_key:
|
333
452
|
specification_version: 3
|
334
|
-
summary: Fig is a utility for configuring environments and managing dependencies across a team of developers.
|
453
|
+
summary: Fig is a utility for configuring environments and managing dependencies across a team of developers. (fig18/i386-mswin32 version)
|
335
454
|
test_files: []
|
336
455
|
|