autobuild 1.7.3 → 1.7.4.rc1

Sign up to get free protection for your applications and to get access to all the features.
@@ -117,6 +117,40 @@ module Autobuild
117
117
  end
118
118
  end
119
119
 
120
+ # Computes the merge status for this package between two existing tags
121
+ # Raises if a tag is unknown
122
+ def delta_between_tags(package, from_tag, to_tag)
123
+ Dir.chdir(package.importdir) do
124
+ pkg_tags = tags(package)
125
+ if not pkg_tags.has_key?(from_tag)
126
+ raise ArgumentError, "tag '#{from_tag}' is unknown to #{package.name} -- known tags are: #{pkg_tags.keys}"
127
+ end
128
+ if not pkg_tags.has_key?(to_tag)
129
+ raise ArgumentError, "tag '#{to_tag}' is unknown to #{package.name} -- known tags are: #{pkg_tags.keys}"
130
+ end
131
+
132
+ from_commit = pkg_tags[from_tag]
133
+ to_commit = pkg_tags[to_tag]
134
+
135
+ merge_status(package, to_commit, from_commit)
136
+ end
137
+ end
138
+
139
+ # Retrieve the tags of this packages as a hash mapping to the commit id
140
+ def tags(package)
141
+ Dir.chdir(package.importdir) do
142
+ `git fetch --tags -q`
143
+ tag_list = `git show-ref --tags`
144
+ tag_list = tag_list.split("\n")
145
+ @tags ||= Hash.new
146
+ tag_list.each do |entry|
147
+ commit_to_tag = entry.split(" ")
148
+ @tags[commit_to_tag[1].sub("refs/tags/","")] = commit_to_tag[0]
149
+ end
150
+ @tags
151
+ end
152
+ end
153
+
120
154
  # Fetches updates from the remote repository. Returns the remote commit
121
155
  # ID on success, nil on failure. Expects the current directory to be the
122
156
  # package's source directory.
@@ -1,5 +1,5 @@
1
1
  module Autobuild
2
- VERSION = "1.7.3" unless defined? Autobuild::VERSION
2
+ VERSION = "1.7.4.rc1" unless defined? Autobuild::VERSION
3
3
  end
4
4
 
5
5
 
metadata CHANGED
@@ -1,109 +1,111 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: autobuild
3
- version: !ruby/object:Gem::Version
4
- version: 1.7.3
5
- prerelease:
3
+ version: !ruby/object:Gem::Version
4
+ hash: 941199147
5
+ prerelease: 6
6
+ segments:
7
+ - 1
8
+ - 7
9
+ - 4
10
+ - rc
11
+ - 1
12
+ version: 1.7.4.rc1
6
13
  platform: ruby
7
- authors:
14
+ authors:
8
15
  - Sylvain Joyeux
9
16
  autorequire:
10
17
  bindir: bin
11
18
  cert_chain: []
12
- date: 2013-07-01 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
19
+
20
+ date: 2013-07-26 00:00:00 Z
21
+ dependencies:
22
+ - !ruby/object:Gem::Dependency
15
23
  name: rake
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
- version: 0.9.0
22
- type: :runtime
23
24
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
+ requirement: &id001 !ruby/object:Gem::Requirement
25
26
  none: false
26
- requirements:
27
- - - ! '>='
28
- - !ruby/object:Gem::Version
27
+ requirements:
28
+ - - ">="
29
+ - !ruby/object:Gem::Version
30
+ hash: 59
31
+ segments:
32
+ - 0
33
+ - 9
34
+ - 0
29
35
  version: 0.9.0
30
- - !ruby/object:Gem::Dependency
31
- name: utilrb
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ! '>='
36
- - !ruby/object:Gem::Version
37
- version: 1.6.0
38
36
  type: :runtime
37
+ version_requirements: *id001
38
+ - !ruby/object:Gem::Dependency
39
+ name: utilrb
39
40
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
+ requirement: &id002 !ruby/object:Gem::Requirement
41
42
  none: false
42
- requirements:
43
- - - ! '>='
44
- - !ruby/object:Gem::Version
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ hash: 15
47
+ segments:
48
+ - 1
49
+ - 6
50
+ - 0
45
51
  version: 1.6.0
46
- - !ruby/object:Gem::Dependency
47
- name: highline
48
- requirement: !ruby/object:Gem::Requirement
49
- none: false
50
- requirements:
51
- - - ! '>='
52
- - !ruby/object:Gem::Version
53
- version: '0'
54
52
  type: :runtime
53
+ version_requirements: *id002
54
+ - !ruby/object:Gem::Dependency
55
+ name: highline
55
56
  prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
+ requirement: &id003 !ruby/object:Gem::Requirement
57
58
  none: false
58
- requirements:
59
- - - ! '>='
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- - !ruby/object:Gem::Dependency
59
+ requirements:
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ hash: 3
63
+ segments:
64
+ - 0
65
+ version: "0"
66
+ type: :runtime
67
+ version_requirements: *id003
68
+ - !ruby/object:Gem::Dependency
63
69
  name: rdoc
64
- requirement: !ruby/object:Gem::Requirement
65
- none: false
66
- requirements:
67
- - - ~>
68
- - !ruby/object:Gem::Version
69
- version: '4.0'
70
- type: :development
71
70
  prerelease: false
72
- version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
- requirements:
75
- - - ~>
76
- - !ruby/object:Gem::Version
77
- version: '4.0'
78
- - !ruby/object:Gem::Dependency
79
- name: hoe
80
- requirement: !ruby/object:Gem::Requirement
71
+ requirement: &id004 !ruby/object:Gem::Requirement
81
72
  none: false
82
- requirements:
73
+ requirements:
83
74
  - - ~>
84
- - !ruby/object:Gem::Version
85
- version: '3.6'
75
+ - !ruby/object:Gem::Version
76
+ hash: 27
77
+ segments:
78
+ - 4
79
+ - 0
80
+ version: "4.0"
86
81
  type: :development
82
+ version_requirements: *id004
83
+ - !ruby/object:Gem::Dependency
84
+ name: hoe
87
85
  prerelease: false
88
- version_requirements: !ruby/object:Gem::Requirement
86
+ requirement: &id005 !ruby/object:Gem::Requirement
89
87
  none: false
90
- requirements:
88
+ requirements:
91
89
  - - ~>
92
- - !ruby/object:Gem::Version
93
- version: '3.6'
94
- description: Collection of classes to handle build systems (CMake, autotools, ...)
95
- and import mechanisms (tarballs, CVS, SVN, git, ...). It also offers a Rake integration
96
- to import and build such software packages. It is the backbone of the autoproj (http://rock-robotics.org/autoproj)
97
- integrated software project management tool.
90
+ - !ruby/object:Gem::Version
91
+ hash: 9
92
+ segments:
93
+ - 3
94
+ - 7
95
+ version: "3.7"
96
+ type: :development
97
+ version_requirements: *id005
98
+ description: Collection of classes to handle build systems (CMake, autotools, ...) and import mechanisms (tarballs, CVS, SVN, git, ...). It also offers a Rake integration to import and build such software packages. It is the backbone of the autoproj (http://rock-robotics.org/autoproj) integrated software project management tool.
98
99
  email: rock-dev@dfki.de
99
- executables:
100
+ executables:
100
101
  - autobuild
101
102
  extensions: []
102
- extra_rdoc_files:
103
+
104
+ extra_rdoc_files:
103
105
  - Changes.txt
104
106
  - Manifest.txt
105
107
  - README.txt
106
- files:
108
+ files:
107
109
  - Changes.txt
108
110
  - Manifest.txt
109
111
  - README.txt
@@ -149,34 +151,44 @@ files:
149
151
  - test/tools.rb
150
152
  - .gemtest
151
153
  homepage: http://rock-robotics.org/stable/documentation/autoproj
152
- licenses: []
154
+ licenses:
155
+ - MIT
153
156
  post_install_message:
154
- rdoc_options:
157
+ rdoc_options:
155
158
  - --main
156
159
  - README.txt
157
- require_paths:
160
+ require_paths:
158
161
  - lib
159
- required_ruby_version: !ruby/object:Gem::Requirement
162
+ required_ruby_version: !ruby/object:Gem::Requirement
160
163
  none: false
161
- requirements:
162
- - - ! '>='
163
- - !ruby/object:Gem::Version
164
- version: '0'
165
- required_rubygems_version: !ruby/object:Gem::Requirement
164
+ requirements:
165
+ - - ">="
166
+ - !ruby/object:Gem::Version
167
+ hash: 3
168
+ segments:
169
+ - 0
170
+ version: "0"
171
+ required_rubygems_version: !ruby/object:Gem::Requirement
166
172
  none: false
167
- requirements:
168
- - - ! '>='
169
- - !ruby/object:Gem::Version
170
- version: '0'
173
+ requirements:
174
+ - - ">"
175
+ - !ruby/object:Gem::Version
176
+ hash: 25
177
+ segments:
178
+ - 1
179
+ - 3
180
+ - 1
181
+ version: 1.3.1
171
182
  requirements: []
183
+
172
184
  rubyforge_project: autobuild
173
- rubygems_version: 1.8.23
185
+ rubygems_version: 1.8.24
174
186
  signing_key:
175
187
  specification_version: 3
176
188
  summary: Library to handle build systems and import mechanisms
177
- test_files:
178
- - test/test_import_tar.rb
179
- - test/test_subcommand.rb
189
+ test_files:
180
190
  - test/test_reporting.rb
191
+ - test/test_subcommand.rb
181
192
  - test/test_import_svn.rb
182
193
  - test/test_import_cvs.rb
194
+ - test/test_import_tar.rb