buildr 1.3.5 → 1.4.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.
- data/CHANGELOG +153 -8
- data/README.rdoc +1 -1
- data/addon/buildr/antlr.rb +5 -5
- data/addon/buildr/drb.rb +18 -18
- data/addon/buildr/hibernate.rb +18 -14
- data/addon/buildr/javacc.rb +4 -4
- data/addon/buildr/jetty.rb +5 -5
- data/addon/buildr/nailgun.rb +23 -23
- data/addon/buildr/openjpa.rb +1 -1
- data/addon/buildr/org/apache/buildr/BuildrNail$Main.class +0 -0
- data/addon/buildr/org/apache/buildr/BuildrNail.class +0 -0
- data/addon/buildr/org/apache/buildr/JettyWrapper$1.class +0 -0
- data/addon/buildr/org/apache/buildr/JettyWrapper$BuildrHandler.class +0 -0
- data/addon/buildr/org/apache/buildr/JettyWrapper.class +0 -0
- data/addon/buildr/protobuf.rb +75 -0
- data/addon/buildr/xmlbeans.rb +5 -5
- data/buildr.buildfile +2 -2
- data/buildr.gemspec +8 -7
- data/doc/_layouts/default.html +2 -2
- data/doc/artifacts.textile +4 -4
- data/doc/building.textile +35 -3
- data/doc/contributing.textile +5 -0
- data/doc/download.textile +16 -5
- data/doc/extending.textile +38 -12
- data/doc/installing.textile +6 -5
- data/doc/languages.textile +182 -42
- data/doc/more_stuff.textile +2 -2
- data/doc/packaging.textile +14 -15
- data/doc/projects.textile +7 -2
- data/doc/quick_start.textile +4 -4
- data/doc/scripts/buildr-git.rb +63 -63
- data/doc/scripts/gitflow.rb +21 -21
- data/doc/settings_profiles.textile +9 -2
- data/doc/testing.textile +16 -5
- data/etc/KEYS +38 -0
- data/lib/buildr/core/application.rb +33 -27
- data/lib/buildr/core/build.rb +41 -28
- data/lib/buildr/core/cc.rb +172 -0
- data/lib/buildr/core/checks.rb +1 -1
- data/lib/buildr/core/common.rb +7 -6
- data/lib/buildr/core/compile.rb +7 -8
- data/lib/buildr/core/doc.rb +263 -0
- data/lib/buildr/core/environment.rb +6 -6
- data/lib/buildr/core/filter.rb +77 -35
- data/lib/buildr/core/generate.rb +7 -7
- data/lib/buildr/core/help.rb +1 -1
- data/lib/buildr/core/osx.rb +6 -6
- data/lib/buildr/core/progressbar.rb +4 -4
- data/lib/buildr/core/project.rb +144 -36
- data/lib/buildr/core/shell.rb +34 -34
- data/lib/buildr/core/test.rb +89 -20
- data/lib/buildr/core/transports.rb +8 -7
- data/lib/buildr/core/util.rb +77 -23
- data/lib/buildr/core.rb +1 -0
- data/lib/buildr/groovy/bdd.rb +5 -5
- data/lib/buildr/groovy/compiler.rb +19 -15
- data/lib/buildr/groovy/shell.rb +6 -6
- data/lib/buildr/ide/eclipse/java.rb +3 -3
- data/lib/buildr/ide/eclipse/plugin.rb +8 -5
- data/lib/buildr/ide/eclipse/scala.rb +4 -2
- data/lib/buildr/ide/eclipse.rb +148 -75
- data/lib/buildr/ide/idea.rb +2 -2
- data/lib/buildr/ide/idea7x.rb +23 -4
- data/lib/buildr/java/ant.rb +4 -4
- data/lib/buildr/java/bdd.rb +51 -54
- data/lib/buildr/java/cobertura.rb +57 -35
- data/lib/buildr/java/commands.rb +14 -5
- data/lib/buildr/java/compiler.rb +3 -217
- data/lib/buildr/java/deprecated.rb +4 -4
- data/lib/buildr/java/doc.rb +70 -0
- data/lib/buildr/java/emma.rb +22 -22
- data/lib/buildr/java/jruby.rb +4 -4
- data/lib/buildr/java/jtestr_runner.rb.erb +27 -25
- data/lib/buildr/java/org/apache/buildr/JavaTestFilter.class +0 -0
- data/lib/buildr/java/org/apache/buildr/JavaTestFilter.java +8 -3
- data/lib/buildr/java/packaging.rb +30 -29
- data/lib/buildr/java/pom.rb +4 -4
- data/lib/buildr/java/rjb.rb +6 -6
- data/lib/buildr/java/test_result.rb +61 -85
- data/lib/buildr/java/tests.rb +44 -27
- data/lib/buildr/java/version_requirement.rb +8 -8
- data/lib/buildr/java.rb +1 -0
- data/lib/buildr/packaging/archive.rb +55 -22
- data/lib/buildr/packaging/artifact.rb +75 -36
- data/lib/buildr/packaging/artifact_namespace.rb +90 -78
- data/lib/buildr/packaging/artifact_search.rb +5 -5
- data/lib/buildr/packaging/gems.rb +11 -7
- data/lib/buildr/packaging/package.rb +10 -7
- data/lib/buildr/packaging/tar.rb +14 -14
- data/lib/buildr/packaging/version_requirement.rb +30 -10
- data/lib/buildr/packaging/ziptask.rb +51 -13
- data/lib/buildr/scala/bdd.rb +25 -20
- data/lib/buildr/scala/compiler.rb +87 -40
- data/lib/buildr/scala/doc.rb +106 -0
- data/lib/buildr/scala/org/apache/buildr/SpecsSingletonRunner.class +0 -0
- data/lib/buildr/scala/org/apache/buildr/SpecsSingletonRunner.java +57 -0
- data/lib/buildr/scala/shell.rb +14 -9
- data/lib/buildr/scala/tests.rb +33 -26
- data/lib/buildr/scala.rb +1 -0
- data/lib/buildr/shell.rb +33 -33
- data/lib/buildr.rb +1 -1
- data/rakelib/all-in-one.rake +113 -0
- data/rakelib/checks.rake +1 -1
- data/rakelib/doc.rake +7 -0
- data/rakelib/package.rake +1 -1
- data/rakelib/release.rake +9 -6
- data/rakelib/rspec.rake +26 -7
- data/rakelib/setup.rake +15 -3
- data/rakelib/stage.rake +18 -11
- data/spec/addon/drb_spec.rb +25 -25
- data/spec/core/application_spec.rb +111 -21
- data/spec/core/build_spec.rb +16 -15
- data/spec/core/cc_spec.rb +174 -0
- data/spec/core/checks_spec.rb +34 -34
- data/spec/core/common_spec.rb +51 -5
- data/spec/core/compile_spec.rb +89 -14
- data/spec/core/extension_spec.rb +127 -19
- data/spec/core/generate_spec.rb +2 -2
- data/spec/core/project_spec.rb +10 -10
- data/spec/core/test_spec.rb +144 -35
- data/spec/core/transport_spec.rb +8 -8
- data/spec/core/util_spec.rb +63 -5
- data/spec/groovy/bdd_spec.rb +5 -5
- data/spec/groovy/compiler_spec.rb +29 -18
- data/spec/ide/eclipse_spec.rb +185 -9
- data/spec/ide/idea7x_spec.rb +22 -10
- data/spec/java/ant_spec.rb +9 -5
- data/spec/java/bdd_spec.rb +29 -37
- data/spec/java/cobertura_spec.rb +12 -12
- data/spec/java/commands_spec.rb +34 -0
- data/spec/java/compiler_spec.rb +53 -53
- data/spec/java/emma_spec.rb +11 -11
- data/spec/java/java_spec.rb +10 -10
- data/spec/java/packaging_spec.rb +67 -20
- data/spec/java/test_coverage_helper.rb +18 -18
- data/spec/java/tests_spec.rb +13 -9
- data/spec/packaging/archive_spec.rb +187 -20
- data/spec/packaging/artifact_namespace_spec.rb +172 -83
- data/spec/packaging/artifact_spec.rb +83 -18
- data/spec/packaging/packaging_spec.rb +41 -14
- data/spec/sandbox.rb +23 -12
- data/spec/scala/bdd_spec.rb +13 -8
- data/spec/scala/compiler_spec.rb +18 -13
- data/spec/scala/scala.rb +3 -3
- data/spec/scala/tests_spec.rb +46 -24
- data/spec/spec_helpers.rb +28 -10
- data/spec/version_requirement_spec.rb +25 -11
- metadata +149 -133
- data/lib/buildr/scala/org/apache/buildr/SpecsSingletonRunner$.class +0 -0
- data/lib/buildr/scala/org/apache/buildr/SpecsSingletonRunner.scala +0 -35
- data/rakelib/stage.rake~ +0 -213
data/spec/core/extension_spec.rb
CHANGED
|
@@ -18,17 +18,31 @@ require File.join(File.dirname(__FILE__), '../spec_helpers')
|
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
describe Extension do
|
|
21
|
-
|
|
21
|
+
|
|
22
|
+
before do
|
|
23
|
+
@saved_modules = Project.class_eval { @extension_modules }.dup
|
|
24
|
+
@saved_callbacks = Project.class_eval { @global_callbacks }.dup
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
after do
|
|
28
|
+
modules = @saved_modules
|
|
29
|
+
callbacks = @saved_callbacks
|
|
30
|
+
Project.class_eval do
|
|
31
|
+
@global_callbacks = callbacks
|
|
32
|
+
@extension_modules = modules
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
|
|
22
36
|
it 'should call Extension.first_time during include' do
|
|
23
37
|
TestExtension.should_receive(:first_time_called).once
|
|
24
38
|
class Buildr::Project
|
|
25
39
|
include TestExtension
|
|
26
40
|
end
|
|
27
41
|
end
|
|
28
|
-
|
|
42
|
+
|
|
29
43
|
it 'should call before_define and after_define in order when project is defined' do
|
|
30
44
|
begin
|
|
31
|
-
TestExtension.
|
|
45
|
+
TestExtension.callback do |extension|
|
|
32
46
|
extension.should_receive(:before_define_called).once.ordered
|
|
33
47
|
extension.should_receive(:after_define_called).once.ordered
|
|
34
48
|
end
|
|
@@ -37,14 +51,14 @@ describe Extension do
|
|
|
37
51
|
end
|
|
38
52
|
define('foo')
|
|
39
53
|
ensure
|
|
40
|
-
TestExtension.
|
|
54
|
+
TestExtension.callback { |ignore| }
|
|
41
55
|
end
|
|
42
56
|
end
|
|
43
57
|
|
|
44
58
|
it 'should call before_define and after_define for each project defined' do
|
|
45
59
|
begin
|
|
46
60
|
extensions = 0
|
|
47
|
-
TestExtension.
|
|
61
|
+
TestExtension.callback do |extension|
|
|
48
62
|
extensions += 1
|
|
49
63
|
extension.should_receive(:before_define_called).once.ordered
|
|
50
64
|
extension.should_receive(:after_define_called).once.ordered
|
|
@@ -55,39 +69,133 @@ describe Extension do
|
|
|
55
69
|
define('foo')
|
|
56
70
|
define('bar')
|
|
57
71
|
extensions.should equal(2)
|
|
58
|
-
ensure
|
|
59
|
-
TestExtension.
|
|
72
|
+
ensure
|
|
73
|
+
TestExtension.callback { |ignore| }
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
it 'should call before_define callbacks in dependency order' do
|
|
78
|
+
class Buildr::Project
|
|
79
|
+
include ExtensionOneTwo
|
|
80
|
+
include ExtensionThreeFour
|
|
81
|
+
end
|
|
82
|
+
define('foo')
|
|
83
|
+
project('foo').before_order.should == [ :one, :two, :three, :four ]
|
|
84
|
+
project('foo').after_order.should == [ :four, :three, :two, :one ]
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
it 'should call before_define callbacks when extending project' do
|
|
88
|
+
define('foo') do
|
|
89
|
+
extend ExtensionOneTwo
|
|
90
|
+
extend ExtensionThreeFour
|
|
60
91
|
end
|
|
92
|
+
project('foo').before_order.should == [ :two, :one, :four, :three ]
|
|
93
|
+
project('foo').after_order.should == [ :four, :three, :two, :one ]
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
it 'should raise error when including if callback dependencies cannot be satisfied' do
|
|
97
|
+
class Buildr::Project
|
|
98
|
+
include ExtensionOneTwo # missing ExtensionThreeFour
|
|
99
|
+
end
|
|
100
|
+
lambda { define('foo') }.should raise_error
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
it 'should raise error when extending if callback dependencies cannot be satisfied' do
|
|
104
|
+
lambda {
|
|
105
|
+
define('foo') do |project|
|
|
106
|
+
extend ExtensionOneTwo # missing ExtensionThreeFour
|
|
107
|
+
end
|
|
108
|
+
}.should raise_error
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
it 'should ignore dependencies when extending project' do
|
|
112
|
+
define('bar') do |project|
|
|
113
|
+
extend ExtensionThreeFour # missing ExtensionOneTwo
|
|
114
|
+
end
|
|
115
|
+
project('bar').before_order.should == [:four, :three]
|
|
116
|
+
project('bar').after_order.should == [:four, :three]
|
|
61
117
|
end
|
|
62
118
|
end
|
|
63
119
|
|
|
64
120
|
module TestExtension
|
|
65
121
|
include Extension
|
|
66
|
-
|
|
122
|
+
|
|
67
123
|
def initialize(*args)
|
|
68
|
-
# callback is used to obtain extension instance created by buildr
|
|
69
|
-
@@initialized.call(self) if @@initialized
|
|
70
124
|
super
|
|
125
|
+
# callback is used to obtain extension instance created by buildr
|
|
126
|
+
@@callback.call(self) if @@callback
|
|
71
127
|
end
|
|
72
|
-
|
|
73
|
-
def
|
|
74
|
-
@@
|
|
128
|
+
|
|
129
|
+
def self.callback(&block)
|
|
130
|
+
@@callback = block
|
|
75
131
|
end
|
|
76
|
-
|
|
132
|
+
|
|
77
133
|
first_time do
|
|
78
|
-
|
|
134
|
+
self.first_time_called()
|
|
79
135
|
end
|
|
80
|
-
|
|
136
|
+
|
|
81
137
|
before_define do |project|
|
|
82
138
|
project.before_define_called()
|
|
83
139
|
end
|
|
84
|
-
|
|
140
|
+
|
|
85
141
|
after_define do |project|
|
|
86
142
|
project.after_define_called()
|
|
87
143
|
end
|
|
88
144
|
|
|
89
|
-
def
|
|
145
|
+
def self.first_time_called()
|
|
146
|
+
end
|
|
147
|
+
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
module BeforeAfter
|
|
151
|
+
def before_order
|
|
152
|
+
@before_order ||= []
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
def after_order
|
|
156
|
+
@after_order ||= []
|
|
157
|
+
end
|
|
158
|
+
end
|
|
159
|
+
|
|
160
|
+
module ExtensionOneTwo
|
|
161
|
+
include Extension, BeforeAfter
|
|
162
|
+
|
|
163
|
+
before_define(:two => :one) do |project|
|
|
164
|
+
project.before_order << :two
|
|
165
|
+
end
|
|
166
|
+
|
|
167
|
+
before_define(:one) do |project|
|
|
168
|
+
project.before_order << :one
|
|
169
|
+
end
|
|
170
|
+
|
|
171
|
+
after_define(:one => :two) do |project|
|
|
172
|
+
project.after_order << :one
|
|
173
|
+
end
|
|
174
|
+
|
|
175
|
+
after_define(:two => :three) do |project|
|
|
176
|
+
project.after_order << :two
|
|
177
|
+
end
|
|
178
|
+
end
|
|
179
|
+
|
|
180
|
+
module ExtensionThreeFour
|
|
181
|
+
include Extension, BeforeAfter
|
|
182
|
+
|
|
183
|
+
before_define(:three => :two)
|
|
184
|
+
|
|
185
|
+
before_define(:four => :three) do |project|
|
|
186
|
+
project.before_order << :four
|
|
187
|
+
end
|
|
188
|
+
|
|
189
|
+
before_define(:three) do |project|
|
|
190
|
+
project.before_order << :three
|
|
191
|
+
end
|
|
192
|
+
|
|
193
|
+
after_define(:three => :four) do |project|
|
|
194
|
+
project.after_order << :three
|
|
195
|
+
end
|
|
196
|
+
|
|
197
|
+
after_define(:four) do |project|
|
|
198
|
+
project.after_order << :four
|
|
90
199
|
end
|
|
91
|
-
|
|
92
200
|
end
|
|
93
201
|
|
data/spec/core/generate_spec.rb
CHANGED
|
@@ -18,13 +18,13 @@ require File.join(File.dirname(__FILE__), '../spec_helpers')
|
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
describe Buildr::Generate do
|
|
21
|
-
|
|
21
|
+
|
|
22
22
|
describe 'Generated buildfile' do
|
|
23
23
|
it 'should be a legal buildfile' do
|
|
24
24
|
File.open('buildfile', 'w') { |file| file.write Generate.from_directory(Dir.pwd).join("\n") }
|
|
25
25
|
lambda { Buildr.application.run }.should_not raise_error
|
|
26
26
|
end
|
|
27
|
-
|
|
27
|
+
|
|
28
28
|
it 'should not contain NEXT_VERSION because it was removed in buildr 1.3.3' do
|
|
29
29
|
buildfile = Generate.from_directory(Dir.pwd)
|
|
30
30
|
buildfile.each { |line| line.should_not include('NEXT_VERSION')}
|
data/spec/core/project_spec.rb
CHANGED
|
@@ -45,7 +45,7 @@ describe Project do
|
|
|
45
45
|
foo.should be(project('foo'))
|
|
46
46
|
bar.should be(project('bar'))
|
|
47
47
|
end
|
|
48
|
-
|
|
48
|
+
|
|
49
49
|
it 'should show up in projects list if defined' do
|
|
50
50
|
define('foo')
|
|
51
51
|
projects.map(&:name).should include('foo')
|
|
@@ -206,7 +206,7 @@ describe Layout do
|
|
|
206
206
|
@layout.expand(:foo, nil, :bar).should eql('none')
|
|
207
207
|
@layout.expand(nil, :foo).should eql('foo')
|
|
208
208
|
end
|
|
209
|
-
|
|
209
|
+
|
|
210
210
|
it 'should return nil if path not mapped' do
|
|
211
211
|
@layout[:foo].should be_nil
|
|
212
212
|
end
|
|
@@ -368,7 +368,7 @@ describe Project, '#on_define' do
|
|
|
368
368
|
define('foo') { define 'bar' }
|
|
369
369
|
scopes.should eql([['foo'], ['foo', 'bar']])
|
|
370
370
|
end
|
|
371
|
-
|
|
371
|
+
|
|
372
372
|
it 'should be removed in version 1.5 since it was deprecated in version 1.3' do
|
|
373
373
|
Buildr::VERSION.should < '1.5'
|
|
374
374
|
end
|
|
@@ -418,7 +418,7 @@ describe 'Sub-project' do
|
|
|
418
418
|
define 'foo' do
|
|
419
419
|
define 'bar'
|
|
420
420
|
define 'bar'
|
|
421
|
-
end
|
|
421
|
+
end
|
|
422
422
|
end.should raise_error
|
|
423
423
|
end
|
|
424
424
|
|
|
@@ -456,7 +456,7 @@ describe 'Sub-project' do
|
|
|
456
456
|
ordered << self.name
|
|
457
457
|
define('bar') { ordered << self.name }
|
|
458
458
|
define('baz') { ordered << self.name }
|
|
459
|
-
end
|
|
459
|
+
end
|
|
460
460
|
ordered.should eql(['foo', 'foo:bar', 'foo:baz'])
|
|
461
461
|
end
|
|
462
462
|
|
|
@@ -466,7 +466,7 @@ describe 'Sub-project' do
|
|
|
466
466
|
ordered << self.name
|
|
467
467
|
define('bar') { project('foo:baz') ; ordered << self.name }
|
|
468
468
|
define('baz') { ordered << self.name }
|
|
469
|
-
end
|
|
469
|
+
end
|
|
470
470
|
ordered.should eql(['foo', 'foo:baz', 'foo:bar'])
|
|
471
471
|
end
|
|
472
472
|
|
|
@@ -475,7 +475,7 @@ describe 'Sub-project' do
|
|
|
475
475
|
define 'foo' do
|
|
476
476
|
define('bar') { project('foo:baz') }
|
|
477
477
|
define('baz') { project('foo:bar') }
|
|
478
|
-
end
|
|
478
|
+
end
|
|
479
479
|
end.should raise_error(RuntimeError, /Circular dependency/)
|
|
480
480
|
end
|
|
481
481
|
end
|
|
@@ -645,7 +645,7 @@ describe Project, '#task' do
|
|
|
645
645
|
it 'should create a regular task' do
|
|
646
646
|
define('foo') { task('bar') }
|
|
647
647
|
Buildr.application.lookup('foo:bar').should_not be_nil
|
|
648
|
-
end
|
|
648
|
+
end
|
|
649
649
|
|
|
650
650
|
it 'should return a task defined in the project' do
|
|
651
651
|
define('foo') { task('bar') }
|
|
@@ -661,7 +661,7 @@ describe Project, '#task' do
|
|
|
661
661
|
define('foo') { task('bar') }
|
|
662
662
|
project('foo').task('bar').name.should eql('foo:bar')
|
|
663
663
|
end
|
|
664
|
-
|
|
664
|
+
|
|
665
665
|
it 'should ignore namespace if starting with color' do
|
|
666
666
|
define 'foo' do
|
|
667
667
|
task(':bar').name.should == 'bar'
|
|
@@ -744,7 +744,7 @@ end
|
|
|
744
744
|
|
|
745
745
|
|
|
746
746
|
=begin
|
|
747
|
-
describe Buildr::Generate do
|
|
747
|
+
describe Buildr::Generate do
|
|
748
748
|
it 'should be able to create buildfile from directory structure' do
|
|
749
749
|
write 'src/main/java/Foo.java', ''
|
|
750
750
|
write 'one/two/src/main/java/Foo.java', ''
|