autoproj 1.9.0.rc6 → 1.9.0.rc7

Sign up to get free protection for your applications and to get access to all the features.
data/bin/autoproj CHANGED
@@ -257,6 +257,7 @@ EOTEXT
257
257
  # build the list of packages that have actually been selected on the command
258
258
  # line.
259
259
  all_enabled_packages = Autoproj::CmdLine.import_packages(selected_packages)
260
+ Autoproj::CmdLine.load_all_available_package_manifests
260
261
 
261
262
  if Autoproj::CmdLine.update_os_dependencies? && !all_enabled_packages.empty?
262
263
  begin
@@ -1808,7 +1808,7 @@ module Autoproj
1808
1808
  def self.export_env_sh(subdir = nil)
1809
1809
  # Make sure that we have the environment of all selected packages
1810
1810
  if Autoproj.manifest # we don't have a manifest if we are bootstrapping
1811
- Autoproj.manifest.all_selected_packages.each do |pkg_name|
1811
+ Autoproj.manifest.all_selected_packages(false).each do |pkg_name|
1812
1812
  Autobuild::Package[pkg_name].update_environment
1813
1813
  end
1814
1814
  end
@@ -107,7 +107,7 @@ module Autobuild
107
107
  end
108
108
  @os_packages |= pkg_os.to_set
109
109
  rescue Autoproj::OSDependencies::MissingOSDep
110
- Autoproj.manifest.add_exclusion(self.name, "the #{name} osdep is not available on this operating system")
110
+ Autoproj.manifest.add_exclusion(self.name, "it depends on #{name}, which is neither the name of a source package, nor an osdep that is available on this operating system")
111
111
  end
112
112
 
113
113
  def depends_on_os_package(name)
@@ -43,6 +43,11 @@ module Autoproj
43
43
 
44
44
  module CmdLine
45
45
  def self.initialize
46
+ if defined? Encoding # This is a 1.9-only thing
47
+ Encoding.default_internal = Encoding::UTF_8
48
+ Encoding.default_external = Encoding::UTF_8
49
+ end
50
+
46
51
  Autobuild::Reporting << Autoproj::Reporter.new
47
52
  if mail_config[:to]
48
53
  Autobuild::Reporting << Autobuild::MailReporter.new(mail_config)
@@ -376,6 +381,23 @@ module Autoproj
376
381
  Autoproj.save_config
377
382
  end
378
383
 
384
+ # This is a bit of a killer. It loads all available package manifests,
385
+ # but simply warns in case of errors. The reasons for that is that the
386
+ # only packages that should really block the current processing are the
387
+ # ones that are selected on the command line
388
+ def self.load_all_available_package_manifests
389
+ # Load the manifest for packages that are already present on the
390
+ # file system
391
+ manifest.packages.each_value do |pkg|
392
+ if File.directory?(pkg.autobuild.srcdir)
393
+ begin
394
+ manifest.load_package_manifest(pkg.autobuild.name)
395
+ rescue Exception => e
396
+ Autoproj.warn "cannot load package manifest for #{pkg.autobuild.name}: #{e.message}"
397
+ end
398
+ end
399
+ end
400
+ end
379
401
 
380
402
  def self.display_configuration(manifest, package_list = nil)
381
403
  # Load the manifest for packages that are already present on the
@@ -1760,13 +1782,7 @@ where 'mode' is one of:
1760
1782
  Autoproj::CmdLine.setup_all_package_directories
1761
1783
  Autoproj::CmdLine.finalize_package_setup
1762
1784
 
1763
- # Load the manifest for packages that are already present on the
1764
- # file system
1765
- manifest.packages.each_value do |pkg|
1766
- if File.directory?(pkg.autobuild.srcdir)
1767
- manifest.load_package_manifest(pkg.autobuild.name)
1768
- end
1769
- end
1785
+ load_all_available_package_manifests
1770
1786
  remaining_arguments
1771
1787
  end
1772
1788
 
@@ -1897,9 +1897,9 @@ module Autoproj
1897
1897
  end
1898
1898
 
1899
1899
  # Returns the set of packages that are selected by the layout
1900
- def all_selected_packages
1900
+ def all_selected_packages(validate = true)
1901
1901
  result = Set.new
1902
- root = default_packages.packages.to_set
1902
+ root = default_packages(validate).packages.to_set
1903
1903
  root.each do |pkg_name|
1904
1904
  Autobuild::Package[pkg_name].all_dependencies(result)
1905
1905
  end
@@ -148,7 +148,7 @@ module Autoproj
148
148
  def self.export_env_sh(subdir = nil)
149
149
  # Make sure that we have the environment of all selected packages
150
150
  if Autoproj.manifest # we don't have a manifest if we are bootstrapping
151
- Autoproj.manifest.all_selected_packages.each do |pkg_name|
151
+ Autoproj.manifest.all_selected_packages(false).each do |pkg_name|
152
152
  Autobuild::Package[pkg_name].update_environment
153
153
  end
154
154
  end
@@ -1,3 +1,3 @@
1
1
  module Autoproj
2
- VERSION = "1.9.0.rc6"
2
+ VERSION = "1.9.0.rc7"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: autoproj
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.0.rc6
4
+ version: 1.9.0.rc7
5
5
  prerelease: 6
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-01-23 00:00:00.000000000 Z
12
+ date: 2013-01-28 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: autobuild
16
- requirement: &11142600 !ruby/object:Gem::Requirement
16
+ requirement: &10775160 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 1.6.0.rc1
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *11142600
24
+ version_requirements: *10775160
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: utilrb
27
- requirement: &11142140 !ruby/object:Gem::Requirement
27
+ requirement: &10828400 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 1.6.0
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *11142140
35
+ version_requirements: *10828400
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: highline
38
- requirement: &11141700 !ruby/object:Gem::Requirement
38
+ requirement: &10826800 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 1.5.0
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *11141700
46
+ version_requirements: *10826800
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rdoc
49
- requirement: &11141260 !ruby/object:Gem::Requirement
49
+ requirement: &10825800 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '3.10'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *11141260
57
+ version_requirements: *10825800
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: hoe
60
- requirement: &11140820 !ruby/object:Gem::Requirement
60
+ requirement: &10824720 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: '3.3'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *11140820
68
+ version_requirements: *10824720
69
69
  description: autoproj is a manager for sets of software packages. It allows the user
70
70
  to import and build packages from source, still using the underlying distribution's
71
71
  native package manager for software that is available on it.