fig 1.12.0 → 1.13.0

Sign up to get free protection for your applications and to get access to all the features.
data/Changes CHANGED
@@ -1,3 +1,21 @@
1
+ v1.13.0 - 2013/12/3
2
+
3
+ Bug fixes:
4
+
5
+ - Now, modulo the value of the --update-lock-response option, always locks
6
+ FIG_HOME. This is to avoid corruption of the local copy of the remote
7
+ repository's figrc. Thanks to James Fraser for the report.
8
+
9
+ - Incorrect message when the remote repository was empty when using
10
+ --list-remote.
11
+
12
+ - The "up-to-date" check for files accessed via ftp:, file:, and sftp: URLs
13
+ now includes a size check.
14
+
15
+ v1.12.1.beta.1 - 2013/11/12
16
+
17
+ - Test release.
18
+
1
19
  v1.12.0 - 2013/10/14
2
20
 
3
21
  Bug fixes:
data/lib/fig.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Fig
2
- VERSION = '1.12.0'
2
+ VERSION = '1.13.0'
3
3
  end
@@ -197,8 +197,6 @@ class Fig::Command
197
197
  end
198
198
 
199
199
  def set_up_update_lock()
200
- return if @options.actions.none? {|action| action.modifies_repository?}
201
-
202
200
  update_lock_response = @options.update_lock_response
203
201
  return if update_lock_response == :ignore
204
202
 
@@ -34,7 +34,7 @@ class Fig::Command::Action::ListRemote
34
34
 
35
35
  if packages.empty?
36
36
  if $stdout.tty?
37
- puts 'No local packages exist.'
37
+ puts 'No remote packages exist.'
38
38
  end
39
39
  else
40
40
  packages.sort.each {|item| puts item}
@@ -70,10 +70,6 @@ class Fig::OperatingSystem
70
70
  Dir.entries(dir) - ['.', '..']
71
71
  end
72
72
 
73
- def mtime(path)
74
- File.mtime(path)
75
- end
76
-
77
73
  def write(path, content)
78
74
  File.open(path, 'wb') { |f| f.binmode; f << content }
79
75
  end
@@ -31,6 +31,10 @@ class Fig::Protocol::File
31
31
  def path_up_to_date?(uri, path, prompt_for_login)
32
32
  begin
33
33
  unescaped_path = CGI.unescape uri.path
34
+ if ::File.size(unescaped_path) != ::File.size(path)
35
+ return false
36
+ end
37
+
34
38
  if ::File.mtime(unescaped_path) <= ::File.mtime(path)
35
39
  return true
36
40
  end
@@ -37,6 +37,10 @@ class Fig::Protocol::FTP
37
37
  ftp = Net::FTP.new(uri.host)
38
38
  ftp_login(ftp, uri.host, prompt_for_login)
39
39
 
40
+ if ftp.size(uri.path) != ::File.size(path)
41
+ return false
42
+ end
43
+
40
44
  if ftp.mtime(uri.path) <= ::File.mtime(path)
41
45
  return true
42
46
  end
@@ -56,7 +56,12 @@ class Fig::Protocol::SFTP
56
56
  sftp_run(uri, prompt_for_login) do
57
57
  |connection|
58
58
 
59
- return connection.stat!(uri.path).mtime.to_f <= ::File.mtime(path).to_f
59
+ stat_attributes = connection.stat!(uri.path)
60
+ if stat_attributes.size != ::File.size(path)
61
+ return false
62
+ end
63
+
64
+ return stat_attributes.mtime.to_f <= ::File.mtime(path).to_f
60
65
  end
61
66
 
62
67
  return nil
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fig
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.12.0
4
+ version: 1.13.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-10-14 00:00:00.000000000 Z
12
+ date: 2013-12-03 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: colorize
16
- requirement: &27632120 !ruby/object:Gem::Requirement
16
+ requirement: &15094580 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 0.5.8
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *27632120
24
+ version_requirements: *15094580
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: highline
27
- requirement: &27631660 !ruby/object:Gem::Requirement
27
+ requirement: &15094120 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 1.6.19
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *27631660
35
+ version_requirements: *15094120
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: json
38
- requirement: &27631200 !ruby/object:Gem::Requirement
38
+ requirement: &15093660 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '1.8'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *27631200
46
+ version_requirements: *15093660
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: libarchive-static
49
- requirement: &27630740 !ruby/object:Gem::Requirement
49
+ requirement: &15093200 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 1.0.0
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *27630740
57
+ version_requirements: *15093200
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: log4r
60
- requirement: &27630280 !ruby/object:Gem::Requirement
60
+ requirement: &15092740 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: 1.1.5
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *27630280
68
+ version_requirements: *15092740
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: net-netrc
71
- requirement: &27629820 !ruby/object:Gem::Requirement
71
+ requirement: &15092280 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: 0.2.2
77
77
  type: :runtime
78
78
  prerelease: false
79
- version_requirements: *27629820
79
+ version_requirements: *15092280
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: net-sftp
82
- requirement: &27629360 !ruby/object:Gem::Requirement
82
+ requirement: &15091820 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: 2.1.2
88
88
  type: :runtime
89
89
  prerelease: false
90
- version_requirements: *27629360
90
+ version_requirements: *15091820
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: net-ssh
93
- requirement: &27628900 !ruby/object:Gem::Requirement
93
+ requirement: &15091360 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ! '>='
@@ -98,10 +98,10 @@ dependencies:
98
98
  version: 2.6.7
99
99
  type: :runtime
100
100
  prerelease: false
101
- version_requirements: *27628900
101
+ version_requirements: *15091360
102
102
  - !ruby/object:Gem::Dependency
103
103
  name: open4
104
- requirement: &27628440 !ruby/object:Gem::Requirement
104
+ requirement: &15090900 !ruby/object:Gem::Requirement
105
105
  none: false
106
106
  requirements:
107
107
  - - ! '>='
@@ -109,10 +109,10 @@ dependencies:
109
109
  version: 1.0.1
110
110
  type: :runtime
111
111
  prerelease: false
112
- version_requirements: *27628440
112
+ version_requirements: *15090900
113
113
  - !ruby/object:Gem::Dependency
114
114
  name: rdoc
115
- requirement: &27627980 !ruby/object:Gem::Requirement
115
+ requirement: &15090440 !ruby/object:Gem::Requirement
116
116
  none: false
117
117
  requirements:
118
118
  - - ! '>='
@@ -120,10 +120,10 @@ dependencies:
120
120
  version: '4'
121
121
  type: :runtime
122
122
  prerelease: false
123
- version_requirements: *27627980
123
+ version_requirements: *15090440
124
124
  - !ruby/object:Gem::Dependency
125
125
  name: treetop
126
- requirement: &27627520 !ruby/object:Gem::Requirement
126
+ requirement: &15089980 !ruby/object:Gem::Requirement
127
127
  none: false
128
128
  requirements:
129
129
  - - ! '>='
@@ -131,10 +131,10 @@ dependencies:
131
131
  version: 1.4.14
132
132
  type: :runtime
133
133
  prerelease: false
134
- version_requirements: *27627520
134
+ version_requirements: *15089980
135
135
  - !ruby/object:Gem::Dependency
136
136
  name: bundler
137
- requirement: &27627060 !ruby/object:Gem::Requirement
137
+ requirement: &15089520 !ruby/object:Gem::Requirement
138
138
  none: false
139
139
  requirements:
140
140
  - - ! '>='
@@ -142,10 +142,10 @@ dependencies:
142
142
  version: 1.0.15
143
143
  type: :development
144
144
  prerelease: false
145
- version_requirements: *27627060
145
+ version_requirements: *15089520
146
146
  - !ruby/object:Gem::Dependency
147
147
  name: rake
148
- requirement: &27626600 !ruby/object:Gem::Requirement
148
+ requirement: &15089060 !ruby/object:Gem::Requirement
149
149
  none: false
150
150
  requirements:
151
151
  - - ! '>='
@@ -153,10 +153,10 @@ dependencies:
153
153
  version: 0.8.7
154
154
  type: :development
155
155
  prerelease: false
156
- version_requirements: *27626600
156
+ version_requirements: *15089060
157
157
  - !ruby/object:Gem::Dependency
158
158
  name: rspec
159
- requirement: &27626140 !ruby/object:Gem::Requirement
159
+ requirement: &15088600 !ruby/object:Gem::Requirement
160
160
  none: false
161
161
  requirements:
162
162
  - - ~>
@@ -164,10 +164,10 @@ dependencies:
164
164
  version: '2'
165
165
  type: :development
166
166
  prerelease: false
167
- version_requirements: *27626140
167
+ version_requirements: *15088600
168
168
  - !ruby/object:Gem::Dependency
169
169
  name: simplecov
170
- requirement: &27669600 !ruby/object:Gem::Requirement
170
+ requirement: &15128000 !ruby/object:Gem::Requirement
171
171
  none: false
172
172
  requirements:
173
173
  - - ! '>='
@@ -175,10 +175,10 @@ dependencies:
175
175
  version: 0.6.2
176
176
  type: :development
177
177
  prerelease: false
178
- version_requirements: *27669600
178
+ version_requirements: *15128000
179
179
  - !ruby/object:Gem::Dependency
180
180
  name: simplecov-html
181
- requirement: &27669140 !ruby/object:Gem::Requirement
181
+ requirement: &15127540 !ruby/object:Gem::Requirement
182
182
  none: false
183
183
  requirements:
184
184
  - - ! '>='
@@ -186,7 +186,7 @@ dependencies:
186
186
  version: 0.5.3
187
187
  type: :development
188
188
  prerelease: false
189
- version_requirements: *27669140
189
+ version_requirements: *15127540
190
190
  description: Fig is a utility for configuring environments and managing dependencies
191
191
  across a team of developers. Given a list of packages and a command to run, Fig
192
192
  builds environment variables named in those packages (e.g., CLASSPATH), then executes
@@ -271,19 +271,12 @@ files:
271
271
  - lib/fig/external_program.rb
272
272
  - lib/fig/figrc.rb
273
273
  - lib/fig/file_not_found_error.rb
274
- - lib/fig/grammar/base.rb
275
274
  - lib/fig/grammar/base.treetop
276
- - lib/fig/grammar/v0.rb
277
275
  - lib/fig/grammar/v0.treetop
278
- - lib/fig/grammar/v1.rb
279
276
  - lib/fig/grammar/v1.treetop
280
- - lib/fig/grammar/v1_base.rb
281
277
  - lib/fig/grammar/v1_base.treetop
282
- - lib/fig/grammar/v2.rb
283
278
  - lib/fig/grammar/v2.treetop
284
- - lib/fig/grammar/version.rb
285
279
  - lib/fig/grammar/version.treetop
286
- - lib/fig/grammar/version_identification.rb
287
280
  - lib/fig/grammar/version_identification.treetop
288
281
  - lib/fig/grammar_monkey_patches.rb
289
282
  - lib/fig/include_backtrace.rb
@@ -340,6 +333,13 @@ files:
340
333
  - lib/fig/working_directory_metadata.rb
341
334
  - LICENSE
342
335
  - README.md
336
+ - lib/fig/grammar/base.rb
337
+ - lib/fig/grammar/v0.rb
338
+ - lib/fig/grammar/v1.rb
339
+ - lib/fig/grammar/v1_base.rb
340
+ - lib/fig/grammar/v2.rb
341
+ - lib/fig/grammar/version.rb
342
+ - lib/fig/grammar/version_identification.rb
343
343
  homepage: http://github.com/mfoemmel/fig
344
344
  licenses:
345
345
  - BSD