autoproj 2.0.0.rc42 → 2.0.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: fa089f772cf7682ac2d74d05851effa2c21e7ffd
4
- data.tar.gz: 0ad031e321b6ee31932488de6c399990f34ea0c2
3
+ metadata.gz: 76bc72f60bd12fb8626be1bd3b750deea75f4613
4
+ data.tar.gz: e69bc9fc35160b4e1c57ead90e4f18424a0ba456
5
5
  SHA512:
6
- metadata.gz: 5a7f64e6988bb2105ede4c7907f98a12cd309442d44cef7a688ecaae1b446c596eea8f7e22b6b5c0ee54c3af2758fd1a7cd338c1457e4487436ff12af9d0daf7
7
- data.tar.gz: 498d3119d750f2714c8c6572e9ae56a21f8b9ef5c15cb2e7ba452bf12491a727ac7cc2d09bd8422ab1ed1d9560c8c9656858866ee74b9e1d3ae1153a5795f484
6
+ metadata.gz: 2db69c1d9d67720fcf69b916b023678ba1c50a8484925f1e0722e982d5d71de7f03a8520556779afa86bb5793059f994fc46a0de358698d4f156707e00ae3d96
7
+ data.tar.gz: 0fe40287446c20df8759ca1d1675ad1e451505d9d5ffbf0d796e43b7b13964287e76331a241667bd23b23be7aa639151c1a26117fc37229bce80ffd6e8dd61ad
@@ -68,17 +68,17 @@ def status_of_package(package_description, only_local: false, snapshot: false)
68
68
  package_status.msg << Autoproj.color(" is not imported yet", :magenta)
69
69
  else
70
70
  if importer.respond_to?(:snapshot)
71
- snapshot =
71
+ snapshot_version =
72
72
  begin importer.snapshot(pkg, nil, exact_state: false, only_local: only_local)
73
73
  rescue Autobuild::PackageException
74
74
  Hash.new
75
75
  end
76
- if snapshot_overrides_vcs?(importer, package_description.vcs, snapshot)
77
- non_nil_values = snapshot.delete_if { |k, v| !v }
76
+ if snapshot_overrides_vcs?(importer, package_description.vcs, snapshot_version)
77
+ non_nil_values = snapshot_version.delete_if { |k, v| !v }
78
78
  package_status.msg << Autoproj.color(" found configuration that contains all local changes: #{non_nil_values.sort_by(&:first).map { |k, v| "#{k}: #{v}" }.join(", ")}", :bright_green)
79
79
  package_status.msg << Autoproj.color(" consider adding this to your overrides, or use autoproj versions to do it for you", :bright_green)
80
80
  if snapshot
81
- importer.relocate(importer.repository, snapshot)
81
+ importer.relocate(importer.repository, snapshot_version)
82
82
  end
83
83
  end
84
84
  end
@@ -193,35 +193,10 @@ def invalidate_resolve_package_cache
193
193
  # Merges the osdeps information of +info+ into +self+. If packages are
194
194
  # defined in both OSPackageResolver objects, the information in +info+
195
195
  # takes precedence
196
- def merge(info)
196
+ def merge(info, suffixes: [])
197
197
  @definitions = definitions.merge(info.definitions) do |h, v1, v2|
198
198
  if v1 != v2
199
- old = source_of(h)
200
- new = info.source_of(h)
201
-
202
- # Warn if the new osdep definition resolves to a different
203
- # set of packages than the old one
204
- old_resolved = resolve_package(h, resolve_recursive: false).inject(Hash.new) do |osdep_h, (handler, status, list)|
205
- osdep_h[handler] = [status, list.dup]
206
- osdep_h
207
- end
208
- new_resolved = info.resolve_package(h, resolve_recursive: false).inject(Hash.new) do |osdep_h, (handler, status, list)|
209
- osdep_h[handler] = [status, list.dup]
210
- osdep_h
211
- end
212
- if old_resolved != new_resolved
213
- Autoproj.warn "osdeps definition for #{h}, previously defined in #{old} overridden by #{new}:"
214
- first = true
215
- old_resolved.each do |handler, (_, packages)|
216
- Autoproj.warn " #{first ? 'resp. ' : ' '}#{handler}: #{packages.map(&:to_s).join(", ")}"
217
- first = false
218
- end
219
- first = true
220
- new_resolved.each do |handler, (_, packages)|
221
- Autoproj.warn " #{first ? 'and ' : ' '}#{handler}: #{packages.map(&:to_s).join(", ")}"
222
- first = false
223
- end
224
- end
199
+ warn_about_merge_collisions(info, suffixes, h, v1, v2)
225
200
  end
226
201
  v2
227
202
  end
@@ -240,6 +215,42 @@ def merge(info)
240
215
  end
241
216
  end
242
217
 
218
+ # @api private
219
+ #
220
+ # Warn about a collision (override) detected during #merge
221
+ def warn_about_merge_collisions(merged_info, suffixes, key, old_value, new_value)
222
+ old = source_of(key)
223
+ new = merged_info.source_of(key)
224
+
225
+ if suffixes.any? { |s| "#{old}#{s}" == new }
226
+ return
227
+ end
228
+
229
+ # Warn if the new osdep definition resolves to a different
230
+ # set of packages than the old one
231
+ old_resolved = resolve_package(key, resolve_recursive: false).inject(Hash.new) do |osdep_h, (handler, status, list)|
232
+ osdep_h[handler] = [status, list.dup]
233
+ osdep_h
234
+ end
235
+ new_resolved = merged_info.resolve_package(key, resolve_recursive: false).inject(Hash.new) do |osdep_h, (handler, status, list)|
236
+ osdep_h[handler] = [status, list.dup]
237
+ osdep_h
238
+ end
239
+ if old_resolved != new_resolved
240
+ Autoproj.warn "osdeps definition for #{key}, previously defined in #{old} overridden by #{new}:"
241
+ first = true
242
+ old_resolved.each do |handler, (_, packages)|
243
+ Autoproj.warn " #{first ? 'resp. ' : ' '}#{handler}: #{packages.map(&:to_s).join(", ")}"
244
+ first = false
245
+ end
246
+ first = true
247
+ new_resolved.each do |handler, (_, packages)|
248
+ Autoproj.warn " #{first ? 'and ' : ' '}#{handler}: #{packages.map(&:to_s).join(", ")}"
249
+ first = false
250
+ end
251
+ end
252
+ end
253
+
243
254
  # Perform some sanity checks on the given osdeps definitions
244
255
  def self.verify_definitions(hash, path = [])
245
256
  hash.each do |key, value|
@@ -1,3 +1,3 @@
1
1
  module Autoproj
2
- VERSION = "2.0.0.rc42"
2
+ VERSION = "2.0.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: autoproj
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.rc42
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sylvain Joyeux
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-10-28 00:00:00.000000000 Z
11
+ date: 2016-12-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -327,9 +327,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
327
327
  version: 2.0.0
328
328
  required_rubygems_version: !ruby/object:Gem::Requirement
329
329
  requirements:
330
- - - ">"
330
+ - - ">="
331
331
  - !ruby/object:Gem::Version
332
- version: 1.3.1
332
+ version: '0'
333
333
  requirements: []
334
334
  rubyforge_project:
335
335
  rubygems_version: 2.5.1