autoproj 1.11.0.b3 → 1.11.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b9bddbed5843f00a95b7b18d043b2b4b9793fbc6
4
- data.tar.gz: 392659a2bb4009fde57fd5a72480193919752381
3
+ metadata.gz: 2355dd362e769ce1badfc7e1fee1fedfe9cdd0a8
4
+ data.tar.gz: 4240e201c16d859dae7c5694546407c150c2bbdb
5
5
  SHA512:
6
- metadata.gz: 430da15aab04ac6421ff38116ffb24b151669d632bb70e81d360117c3a36b8381fdac41a0080129d419c5d39837126636d4606659784186222b86d888f32eefc
7
- data.tar.gz: 8576957180d5a637bb43949ca77fe5cd7d411699054827ba4d56e00bc9ca600fa1bf6b66b349b316189b45bbfd1eaaf2f3a2c60fb7cca666de9d791da58cfe41
6
+ metadata.gz: 5ea9258e525c023bedb01672cb6b23384a5d55d77d6939153435e976a8009597db453cacabda6f7170fa140bb788c9dac15ea10528d9e4e595a8f360748dfe6e
7
+ data.tar.gz: 3cd7404f69a2d0d706ab170e8733123810867b58ef2256d1d351571b91df5671133e0f270169ec586a73b27117a100257cc7e99369219fbb2d9e6e8e9f94aa2b
@@ -43,13 +43,8 @@ EOTEXT
43
43
  #{color('autoproj bootstrap failed', :red, :bold)}
44
44
  To retry, first source the #{Autoproj::ENV_FILENAME} script with
45
45
  source #{root_dir}/#{Autoproj::ENV_FILENAME}
46
- and then re-run autoproj bootstrap with
47
- autoproj bootstrap <vcs_type> <vcs_url> <vcs_options>
48
-
49
- where
50
- 'vcs_type' is git, svn, darcs, cvs
51
- 'vcs_url' is the vcs-specific URL to the repository, and
52
- 'vcs_options' are optional values that can be given to the chosen VCS
46
+ and then re-run autoproj bootstrap
47
+ autoproj bootstrap '#{ARGV.join("'")}'
53
48
  EOTEXT
54
49
 
55
50
  raise
@@ -75,7 +75,7 @@ packages.each do |name|
75
75
 
76
76
  packages.each do |pkg_name|
77
77
  puts Autoproj.color("source package #{pkg_name}", :bold)
78
- puts " imported from"
78
+ puts " source definition"
79
79
  vcs = Autoproj.manifest.importer_definition_for(pkg_name)
80
80
 
81
81
  fragments = []
@@ -32,6 +32,16 @@ module Autoproj
32
32
  result
33
33
  end
34
34
 
35
+ def has_documentation?
36
+ xml.elements.each('package/description') do |node|
37
+ doc = (node.text || "").strip
38
+ if !doc.empty?
39
+ return true
40
+ end
41
+ end
42
+ return false
43
+ end
44
+
35
45
  def documentation
36
46
  xml.elements.each('package/description') do |node|
37
47
  doc = (node.text || "").strip
@@ -102,6 +112,20 @@ module Autoproj
102
112
  end
103
113
  end
104
114
 
115
+ def each_maintainer
116
+ if !block_given?
117
+ return enum_for(:each_maintainer)
118
+ end
119
+
120
+ xml.elements.each('package/maintainer') do |maintainer|
121
+ (maintainer.text || "").strip.split(',').each do |str|
122
+ name, email = str.split('/').map(&:strip)
123
+ email = nil if email && email.empty?
124
+ yield(name, email)
125
+ end
126
+ end
127
+ end
128
+
105
129
  # Enumerates the name and email of each author. If no email is present,
106
130
  # yields (name, nil)
107
131
  def each_author
@@ -13,6 +13,20 @@ module Autoproj
13
13
  end
14
14
  end
15
15
 
16
+ @source_files = ["source.yml"]
17
+ class << self
18
+ attr_reader :source_files
19
+
20
+ def master_source_file
21
+ source_files.first
22
+ end
23
+
24
+ def add_source_file(name)
25
+ source_files.delete(name)
26
+ source_files << name
27
+ end
28
+ end
29
+
16
30
  # @return [Manifest] the manifest this package set is being used by
17
31
  attr_reader :manifest
18
32
 
@@ -249,19 +263,30 @@ module Autoproj
249
263
  raise InternalError, "source #{vcs} has not been fetched yet, cannot load description for it"
250
264
  end
251
265
 
252
- source_file = File.join(raw_local_dir, "source.yml")
253
- if !File.exists?(source_file)
266
+ master_source_file = File.join(raw_local_dir, PackageSet.master_source_file)
267
+ if !File.exists?(master_source_file)
254
268
  raise ConfigError.new, "source #{vcs.type}:#{vcs.url} should have a source.yml file, but does not"
255
269
  end
256
270
 
257
- source_definition = Autoproj.in_file(source_file, Autoproj::YAML_LOAD_ERROR) do
258
- YAML.load(File.read(source_file))
259
- end
271
+ source_definition = Hash.new
272
+ PackageSet.source_files.each do |name|
273
+ source_file = File.join(raw_local_dir, name)
274
+ next if !File.file?(source_file)
260
275
 
261
- if !source_definition || !source_definition['name']
262
- raise ConfigError.new(source_file), "in #{source_file}: missing a 'name' field"
276
+ newdefs = Autoproj.in_file(source_file, Autoproj::YAML_LOAD_ERROR) do
277
+ YAML.load(File.read(source_file))
278
+ end
279
+ source_definition.merge!(newdefs || Hash.new) do |k, old, new|
280
+ if old.respond_to?(:to_ary)
281
+ old + new
282
+ else new
283
+ end
284
+ end
263
285
  end
264
286
 
287
+ if !source_definition['name']
288
+ raise ConfigError.new(master_source_file), "in #{master_source_file}: missing a 'name' field"
289
+ end
265
290
  source_definition
266
291
  end
267
292
 
@@ -1,3 +1,3 @@
1
1
  module Autoproj
2
- VERSION = "1.11.0.b3"
2
+ VERSION = "1.11.0.rc1"
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: 1.11.0.b3
4
+ version: 1.11.0.rc1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rock Core Developers
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-08-19 00:00:00.000000000 Z
11
+ date: 2014-10-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: autobuild