buildr 1.4.19 → 1.4.20

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- YjIyMTk5OWRlMjI1NDMxODcwMmQwN2I5NjFjZjA3N2Q3YTJmY2MxZA==
4
+ ZWVlMDFmOWQ2NDI1MTAyZDYxZjhjNTdlYzk1ODc2ZDMyZTgwOTVhOQ==
5
5
  data.tar.gz: !binary |-
6
- NjFhYjVhMzE1MWNmMTIzYTc1MzM4ZmUwNGI2N2VkNDhmYjc0MmZlNw==
6
+ M2E5YzVhZmNmY2YwMjNhM2I5Yjk1ZDNlOWFlMzdiNGQ1MTk2MDU4MA==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- NjM2OGM2YzI4Y2IwNTM5Y2VhOWY2Y2YyOGYwMmE3MmQzYmViMjQxNDcxMzI3
10
- MDg5MTI0MjI5NjQ2MThjYWMzOGQ1ZTA4MjA0ZDFmNDE0YjliYjE2ZDdiYmFj
11
- NGNjMWMxMjRkYjVjZGJiYmFjN2VmZjFmMjcyNDQ1MzkzODg1Mzg=
9
+ MmUxZTIzM2ZjOTQxMTRjOTBmZjBkYzNmMGY5NmQ4ZGU3M2IxY2NkN2IxOTc0
10
+ ZjU1ZDc1NTU2ZTA5ZWNiOTU5MGM3YWMxNTIwMmE5YTk3YmRmZjUzNmZlN2Ri
11
+ ZDlmNDEwNjE0MTM5YjBhODY0NzFhNWM2YjMwMDFmY2VlY2Q5NzU=
12
12
  data.tar.gz: !binary |-
13
- ZGQ5OGVmNGM2NjUxMjIzM2RlNjdlNjFlN2VhNTJjODRmM2ZhNjY1YzRiNzYw
14
- MGVlNjQ0ZjU0ZmUzMjg2M2RkZGM2Yjc0MTgzZjVlODRmMWI2OTcyZmIyNjdj
15
- YzdjYzE5ZGQ3NTczODNjMzk5YzJmNjUyNTUxYTFkYWI4MWUzOGY=
13
+ ZjIzMWQzNGNkY2MxNTA4MWNkN2E5Nzk4Y2QyM2VkN2MzYTAyN2QyZDJhZDMx
14
+ ZGZmMjk0NmM4Njg2NzI3NjFjMzkzZTQxMzI2ZDRiZTk3ZjdmYTNiYWJlMWQx
15
+ YmZlYTNmNzAxOTc5ZDYxMDQ2OWYxZmMwZDYyODU0NTRiNDFlNzQ=
data/CHANGELOG CHANGED
@@ -1,3 +1,25 @@
1
+ 1.4.20 (2014-08-23)
2
+ * Fixed : BUILDR-688 - Disregard package-info.java files when determining if
3
+ the Javac compiler should be run or not. Submitted by Pepijn Van
4
+ Eeckhoudt.
5
+ * Fixed : Work around bug/feature of jruby 1.7.13 that caches Gem::Version
6
+ objects based on constructor parameters that causes issues with
7
+ Buildr as we mutate the version objects through monkey patching.
8
+ * Change: Upgrade rjb dependency to 1.4.9.
9
+ * Change: BUILDR-701 - Update to JUnit 4.11. Submitted by Jean-Philippe Caruana.
10
+ * Added: Support the 'report_level' property on findbugs addon.
11
+ * Change: Update the findbugs addon to use the 3.0.0 version of Findbugs.
12
+ * Change: Update the findbugs addon to use the built-in findbugs stylesheet
13
+ to generate the html report.
14
+ * Fixed: Ensure that the 'source_paths' and 'extra_dependencies' properties
15
+ in the findbugs addon does not contain arrays or nils.
16
+ * Fixed: Ensure that the 'single_intermediate_layout' addon removes the top
17
+ level target and reports directories during 'clean' phase.
18
+ * Added: Enhance idea project generation of ejb facet by looking for ejb
19
+ descriptors in location compatible with ejb-jars.
20
+ * Fixed: Ensure that the 'source_paths' property in the pmd addon does not
21
+ contain arrays or nils.
22
+
1
23
  1.4.19 (2014-07-06)
2
24
  * Fixed: BUILDR-700 - Ensure SNAPSHOT artifacts, constructed using the
3
25
  download(artifact('group:artifact:jar:1-SNAPSHOT') =>
@@ -114,7 +114,6 @@ which changes might have broken your build. To run all the test cases:
114
114
 
115
115
  rake spec
116
116
 
117
-
118
117
  == License
119
118
 
120
119
  Licensed to the Apache Software Foundation (ASF) under one or more
data/Rakefile CHANGED
@@ -32,6 +32,7 @@ end
32
32
  def spec(platform = RUBY_PLATFORM[/java/] || 'ruby')
33
33
  @specs ||= ['ruby', 'java', 'x86-mswin32'].inject({}) { |hash, spec_platform|
34
34
  $platform = spec_platform
35
+ raise 'Gem::Specification.load ignores global context (thus $platform) in later versions' unless RUBY_VERSION == '1.9.3'
35
36
  hash.update(spec_platform=>Gem::Specification.load('buildr.gemspec'))
36
37
  }
37
38
  @specs[platform]
@@ -22,48 +22,41 @@ module Buildr
22
22
 
23
23
  # The specs for requirements
24
24
  def dependencies
25
- [
26
- 'com.google.code.findbugs:findbugs-ant:jar:1.3.9',
27
- 'com.google.code.findbugs:findbugs:jar:1.3.9',
28
- 'com.google.code.findbugs:bcel:jar:1.3.9',
29
- 'com.google.code.findbugs:jsr305:jar:1.3.9',
30
- 'com.google.code.findbugs:jFormatString:jar:1.3.9',
31
- 'com.google.code.findbugs:annotations:jar:1.3.9',
32
- 'dom4j:dom4j:jar:1.6.1',
33
- 'jaxen:jaxen:jar:1.1.1',
34
- 'jdom:jdom:jar:1.0',
35
- 'xom:xom:jar:1.0',
36
- 'com.ibm.icu:icu4j:jar:2.6.1',
37
- 'asm:asm:jar:3.1',
38
- 'asm:asm-analysis:jar:3.1',
39
- 'asm:asm-tree:jar:3.1',
40
- 'asm:asm-commons:jar:3.1',
41
- 'asm:asm-util:jar:3.1',
42
- 'asm:asm-xml:jar:3.1',
43
- 'commons-lang:commons-lang:jar:2.4'
44
- ]
45
- end
46
-
47
- def findbugs(output_file, source_paths, analyze_paths, options = { })
25
+ %w(
26
+ com.google.code.findbugs:findbugs:jar:3.0.0
27
+ com.google.code.findbugs:jFormatString:jar:3.0.0
28
+ com.google.code.findbugs:bcel-findbugs:jar:6.0
29
+ com.google.code.findbugs:annotations:jar:3.0.0
30
+ org.ow2.asm:asm-debug-all:jar:5.0.2
31
+ commons-lang:commons-lang:jar:2.6
32
+ dom4j:dom4j:jar:1.6.1
33
+ jaxen:jaxen:jar:1.1.6
34
+ )
35
+ end
36
+
37
+ def findbugs(output_file, source_paths, analyze_paths, options = {})
48
38
  dependencies = (options[:dependencies] || []) + self.dependencies
49
39
  cp = Buildr.artifacts(dependencies).each { |a| a.invoke() if a.respond_to?(:invoke) }.map(&:to_s).join(File::PATH_SEPARATOR)
50
40
 
51
41
  args = {
52
- :output => "xml:withMessages",
53
- :outputFile => output_file,
54
- :effort => 'max',
55
- :pluginList => '',
56
- :classpath => cp,
57
- :timeout => "90000000",
58
- :debug => "false"
42
+ :output => options[:output] || 'xml',
43
+ :outputFile => output_file,
44
+ :effort => 'max',
45
+ :pluginList => '',
46
+ :classpath => cp,
47
+ :reportLevel => options[:report_level] || 'medium',
48
+ :timeout => '90000000',
49
+ :debug => 'false'
59
50
  }
60
51
  args[:failOnError] = true if options[:fail_on_error]
61
52
  args[:excludeFilter] = options[:exclude_filter] if options[:exclude_filter]
62
53
  args[:jvmargs] = options[:java_args] if options[:java_args]
63
54
 
55
+ mkdir_p File.dirname(output_file)
56
+
64
57
  Buildr.ant('findBugs') do |ant|
65
- ant.taskdef :name =>'findBugs',
66
- :classname =>'edu.umd.cs.findbugs.anttask.FindBugsTask',
58
+ ant.taskdef :name => 'findBugs',
59
+ :classname => 'edu.umd.cs.findbugs.anttask.FindBugsTask',
67
60
  :classpath => cp
68
61
  ant.findBugs args do
69
62
  source_paths.each do |source_path|
@@ -97,16 +90,18 @@ module Buildr
97
90
  !!@enabled
98
91
  end
99
92
 
100
- def html_enabled?
101
- File.exist?(self.style_file)
102
- end
103
-
104
93
  attr_writer :config_directory
105
94
 
106
95
  def config_directory
107
96
  @config_directory || project._(:source, :main, :etc, :findbugs)
108
97
  end
109
98
 
99
+ attr_writer :report_level
100
+
101
+ def report_level
102
+ @report_level || 'medium'
103
+ end
104
+
110
105
  attr_writer :report_dir
111
106
 
112
107
  def report_dir
@@ -131,12 +126,6 @@ module Buildr
131
126
  @html_output_file || "#{self.report_dir}/findbugs.html"
132
127
  end
133
128
 
134
- attr_writer :style_file
135
-
136
- def style_file
137
- @style_file || "#{self.config_directory}/findbugs-report.xsl"
138
- end
139
-
140
129
  attr_writer :filter_file
141
130
 
142
131
  def filter_file
@@ -144,17 +133,17 @@ module Buildr
144
133
  end
145
134
 
146
135
  def properties
147
- @properties ||= { }
136
+ @properties ||= {}
148
137
  end
149
138
 
150
139
  attr_writer :java_args
151
140
 
152
141
  def java_args
153
- @java_args || "-server -Xss1m -Xmx800m -Duser.language=en -Duser.region=EN "
142
+ @java_args || '-server -Xss1m -Xmx800m -Duser.language=en -Duser.region=EN '
154
143
  end
155
144
 
156
145
  def source_paths
157
- @source_paths ||= [self.project.compile.sources, self.project.test.compile.sources]
146
+ @source_paths ||= [self.project.compile.sources, self.project.test.compile.sources].flatten.compact
158
147
  end
159
148
 
160
149
  def analyze_paths
@@ -162,7 +151,7 @@ module Buildr
162
151
  end
163
152
 
164
153
  def extra_dependencies
165
- @extra_dependencies ||= [self.project.compile.dependencies, self.project.test.compile.dependencies]
154
+ @extra_dependencies ||= [self.project.compile.dependencies, self.project.test.compile.dependencies].flatten.compact
166
155
  end
167
156
 
168
157
  protected
@@ -172,7 +161,6 @@ module Buildr
172
161
  end
173
162
 
174
163
  attr_reader :project
175
-
176
164
  end
177
165
 
178
166
  module ProjectExtension
@@ -184,11 +172,9 @@ module Buildr
184
172
 
185
173
  after_define do |project|
186
174
  if project.findbugs.enabled?
187
- desc "Generate findbugs xml report."
188
- project.task("findbugs:xml") do
189
- puts "Findbugs: Analyzing source code..."
190
- mkdir_p File.dirname(project.findbugs.xml_output_file)
191
-
175
+ desc 'Generate findbugs xml report.'
176
+ project.task('findbugs:xml') do
177
+ puts 'Findbugs: Analyzing source code...'
192
178
  options =
193
179
  {
194
180
  :properties => project.findbugs.properties,
@@ -196,6 +182,8 @@ module Buildr
196
182
  :extra_dependencies => project.findbugs.extra_dependencies
197
183
  }
198
184
  options[:exclude_filter] = project.findbugs.filter_file if File.exist?(project.findbugs.filter_file)
185
+ options[:output] = 'xml:withMessages'
186
+ options[:report_level] = project.findbugs.report_level
199
187
 
200
188
  Buildr::Findbugs.findbugs(project.findbugs.xml_output_file,
201
189
  project.findbugs.source_paths.flatten.compact,
@@ -203,18 +191,23 @@ module Buildr
203
191
  options)
204
192
  end
205
193
 
206
- if project.findbugs.html_enabled?
207
- xml_task = project.task("findbugs:xml")
208
- desc "Generate findbugs html report."
209
- project.task("findbugs:html" => xml_task) do
210
- puts "Findbugs: Generating report"
211
- mkdir_p File.dirname(project.findbugs.html_output_file)
212
- Buildr.ant "findbugs" do |ant|
213
- ant.style :in => project.findbugs.xml_output_file,
214
- :out => project.findbugs.html_output_file,
215
- :style => project.findbugs.style_file
216
- end
217
- end
194
+ desc 'Generate findbugs html report.'
195
+ project.task('findbugs:html') do
196
+ puts 'Findbugs: Analyzing source code...'
197
+ options =
198
+ {
199
+ :properties => project.findbugs.properties,
200
+ :fail_on_error => project.findbugs.fail_on_error?,
201
+ :extra_dependencies => project.findbugs.extra_dependencies
202
+ }
203
+ options[:exclude_filter] = project.findbugs.filter_file if File.exist?(project.findbugs.filter_file)
204
+ options[:output] = 'html'
205
+ options[:report_level] = project.findbugs.report_level
206
+
207
+ Buildr::Findbugs.findbugs(project.findbugs.html_output_file,
208
+ project.findbugs.source_paths.flatten.compact,
209
+ project.findbugs.analyze_paths.flatten.compact,
210
+ options)
218
211
  end
219
212
  end
220
213
  end
@@ -113,7 +113,7 @@ module Buildr
113
113
  end
114
114
 
115
115
  def source_paths
116
- @source_paths ||= [self.project.compile.sources, self.project.test.compile.sources]
116
+ @source_paths ||= [self.project.compile.sources, self.project.test.compile.sources].flatten.compact
117
117
  end
118
118
 
119
119
  def flat_source_paths
@@ -60,6 +60,8 @@ module Buildr #nodoc
60
60
  if top_dir == base_dir && project.iml?
61
61
  project.iml.excluded_directories << "#{base_dir}/target"
62
62
  project.iml.excluded_directories << "#{base_dir}/reports"
63
+ clean { rm_rf "#{base_dir}/target" }
64
+ clean { rm_rf "#{base_dir}/reports" }
63
65
  end
64
66
  project
65
67
  end
@@ -26,9 +26,9 @@ Gem::Specification.new do |spec|
26
26
  spec.name = 'buildr'
27
27
  spec.version = Buildr::VERSION.dup
28
28
  spec.author = 'Apache Buildr'
29
- spec.email = "users@buildr.apache.org"
30
- spec.homepage = "http://buildr.apache.org/"
31
- spec.summary = "Build like you code"
29
+ spec.email = 'users@buildr.apache.org'
30
+ spec.homepage = 'http://buildr.apache.org/'
31
+ spec.summary = 'Build like you code'
32
32
  spec.description = <<-TEXT
33
33
  Apache Buildr is a build system for Java-based applications, including support
34
34
  for Scala, Groovy and a growing number of JVM languages and tools. We wanted
@@ -49,9 +49,9 @@ for those one-off tasks, with a language that's a joy to use.
49
49
  spec.extra_rdoc_files = 'README.rdoc', 'CHANGELOG', 'LICENSE', 'NOTICE'
50
50
  spec.rdoc_options = '--title', 'Buildr', '--main', 'README.rdoc',
51
51
  '--webcvs', 'https://github.com/apache/buildr'
52
- spec.post_install_message = "To get started run buildr --help"
52
+ spec.post_install_message = 'To get started run buildr --help'
53
53
 
54
- spec.required_rubygems_version = ">= 1.8.6"
54
+ spec.required_rubygems_version = '>= 1.8.6'
55
55
 
56
56
  # Tested against these dependencies.
57
57
  spec.add_dependency 'rake', '0.9.2.2'
@@ -59,11 +59,11 @@ for those one-off tasks, with a language that's a joy to use.
59
59
  spec.add_dependency 'net-ssh', '2.7.0'
60
60
  spec.add_dependency 'net-sftp', '2.1.2'
61
61
  # Required for sftp support under windows
62
- spec.add_dependency "jruby-pageant", '1.1.1' if $platform.to_s == 'java'
62
+ spec.add_dependency 'jruby-pageant', '1.1.1' if $platform.to_s == 'java'
63
63
  spec.add_dependency 'rubyzip', '0.9.9'
64
64
  spec.add_dependency 'json_pure', '1.8.0'
65
65
  spec.add_dependency 'hoe', '3.7.1'
66
- spec.add_dependency 'rjb', '1.4.8' if ($platform.to_s == 'x86-mswin32' || $platform.to_s == 'ruby')
66
+ spec.add_dependency 'rjb', '1.4.9' if ($platform.to_s == 'x86-mswin32' || $platform.to_s == 'ruby')
67
67
  spec.add_dependency 'atoulme-Antwrap', '~> 0.7.4'
68
68
  spec.add_dependency 'diff-lcs', '1.2.4'
69
69
  spec.add_dependency 'rspec-expectations', '2.14.3'
@@ -18,16 +18,28 @@ The source code is included in both source and binary distribution, the Gem dist
18
18
 
19
19
  h2(#dist). Binaries and Source Code
20
20
 
21
+ h3. buildr 1.4.19 (2014-07-06)
22
+
23
+ |_. Package |_. MD5 Checksum |_. PGP |
24
+ | "buildr-1.4.19-java.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.19/buildr-1.4.19-java.gem | "bdf35f947eab94766ec4a4ca4b82e73e":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19-java.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19-java.gem.asc |
25
+ | "buildr-1.4.19-x86-mswin32.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.19/buildr-1.4.19-x86-mswin32.gem | "9fbe0ac5148e5d3a6f449dfbd5dfc4a2":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19-x86-mswin32.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19-x86-mswin32.gem.asc |
26
+ | "buildr-1.4.19.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.19/buildr-1.4.19.gem | "626af3aabef47a6c55587aaeca5d879d":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19.gem.asc |
27
+ | "buildr-1.4.19.tgz":http://www.apache.org/dyn/closer.cgi/buildr/1.4.19/buildr-1.4.19.tgz | "f9bc0151a6ed9867c40393cced6195f5":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19.tgz.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19.tgz.asc |
28
+ | "buildr-1.4.19.zip":http://www.apache.org/dyn/closer.cgi/buildr/1.4.19/buildr-1.4.19.zip | "1c88b93901524e236db41ec69a3bc72a":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19.zip.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.19/buildr-1.4.19.zip.asc |
29
+
30
+ p>. ("Release signing keys":http://www.apache.org/dist/buildr/1.4.19/KEYS)
31
+
32
+
21
33
  h3. buildr 1.4.18 (2014-06-24)
22
34
 
23
35
  |_. Package |_. MD5 Checksum |_. PGP |
24
- | "buildr-1.4.18-java.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.18/buildr-1.4.18-java.gem | "e71adb986a066d0238325dabdfe577ff":http://www.apache.org/dist/buildr/1.4.18/buildr-1.4.18-java.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.18/buildr-1.4.18-java.gem.asc |
25
- | "buildr-1.4.18-x86-mswin32.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.18/buildr-1.4.18-x86-mswin32.gem | "322d4008c2b8ca45e7e78e0248b35d4a":http://www.apache.org/dist/buildr/1.4.18/buildr-1.4.18-x86-mswin32.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.18/buildr-1.4.18-x86-mswin32.gem.asc |
26
- | "buildr-1.4.18.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.18/buildr-1.4.18.gem | "9bb3eb5085bd531ef7b2dc68baf847ad":http://www.apache.org/dist/buildr/1.4.18/buildr-1.4.18.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.18/buildr-1.4.18.gem.asc |
27
- | "buildr-1.4.18.tgz":http://www.apache.org/dyn/closer.cgi/buildr/1.4.18/buildr-1.4.18.tgz | "f6a74d86f76abf9e7de5e2c32ec59946":http://www.apache.org/dist/buildr/1.4.18/buildr-1.4.18.tgz.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.18/buildr-1.4.18.tgz.asc |
28
- | "buildr-1.4.18.zip":http://www.apache.org/dyn/closer.cgi/buildr/1.4.18/buildr-1.4.18.zip | "3fba955436b4dd5f88e0f280d765f37b":http://www.apache.org/dist/buildr/1.4.18/buildr-1.4.18.zip.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.18/buildr-1.4.18.zip.asc |
36
+ | "buildr-1.4.18-java.gem":http://archive.apache.org/dist/buildr/1.4.18/buildr-1.4.18-java.gem | "e71adb986a066d0238325dabdfe577ff":http://archive.apache.org/dist/buildr/1.4.18/buildr-1.4.18-java.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.18/buildr-1.4.18-java.gem.asc |
37
+ | "buildr-1.4.18-x86-mswin32.gem":http://archive.apache.org/dist/buildr/1.4.18/buildr-1.4.18-x86-mswin32.gem | "322d4008c2b8ca45e7e78e0248b35d4a":http://archive.apache.org/dist/buildr/1.4.18/buildr-1.4.18-x86-mswin32.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.18/buildr-1.4.18-x86-mswin32.gem.asc |
38
+ | "buildr-1.4.18.gem":http://archive.apache.org/dist/buildr/1.4.18/buildr-1.4.18.gem | "9bb3eb5085bd531ef7b2dc68baf847ad":http://archive.apache.org/dist/buildr/1.4.18/buildr-1.4.18.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.18/buildr-1.4.18.gem.asc |
39
+ | "buildr-1.4.18.tgz":http://archive.apache.org/dist/buildr/1.4.18/buildr-1.4.18.tgz | "f6a74d86f76abf9e7de5e2c32ec59946":http://archive.apache.org/dist/buildr/1.4.18/buildr-1.4.18.tgz.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.18/buildr-1.4.18.tgz.asc |
40
+ | "buildr-1.4.18.zip":http://archive.apache.org/dist/buildr/1.4.18/buildr-1.4.18.zip | "3fba955436b4dd5f88e0f280d765f37b":http://archive.apache.org/dist/buildr/1.4.18/buildr-1.4.18.zip.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.18/buildr-1.4.18.zip.asc |
29
41
 
30
- p>. ("Release signing keys":http://www.apache.org/dist/buildr/1.4.18/KEYS)
42
+ p>. ("Release signing keys":http://archive.apache.org/dist/buildr/1.4.18/KEYS)
31
43
 
32
44
 
33
45
  h3. buildr 1.4.17 (2014-05-25)
@@ -46,6 +46,21 @@ So let's get started. You can "read the documentation online":quick_start.html,
46
46
 
47
47
  h2(#news). What's New
48
48
 
49
+ Highlights from Buildr 1.4.20 (2014-08-23)
50
+ * Fixed : Work around bug/feature of jruby 1.7.13 that caches Gem::Version
51
+ objects based on constructor parameters that causes issues with
52
+ Buildr as we mutate the version objects through monkey patching.
53
+ * Change: Upgrade rjb dependency to 1.4.9.
54
+ * Change: BUILDR-701 - Update to JUnit 4.11. Submitted by Jean-Philippe Caruana.
55
+ * Added: Support the 'report_level' property on findbugs addon.
56
+ * Change: Update the findbugs addon to use the 3.0.0 version of Findbugs.
57
+ * Change: Update the findbugs addon to use the built-in findbugs stylesheet
58
+ to generate the html report.
59
+ * Fixed: Ensure that the 'single_intermediate_layout' addon removes the top
60
+ level target and reports directories during 'clean' phase.
61
+ * Added: Enhance idea project generation of ejb facet by looking for ejb
62
+ descriptors in location compatible with ejb-jars.
63
+
49
64
  Highlights from Buildr 1.4.19 (2014-07-06)
50
65
  * Fixed: BUILDR-700 - Ensure SNAPSHOT artifacts, constructed using the
51
66
  download(artifact('group:artifact:jar:1-SNAPSHOT') =>
@@ -57,26 +72,6 @@ Highlights from Buildr 1.4.19 (2014-07-06)
57
72
  * Fixed: Fix bug introduced in 1.4.18 version of custom_pom addon where
58
73
  poms are created for artifacts that have a classifier.
59
74
 
60
- Highlights from Buildr 1.4.18 (2014-06-24)
61
- * Fixed: BUILDR-699 - Update the custom_pom addon to avoid failure when
62
- used with zip packages.
63
- * Fixed: BUILDR-694 - "buildr upload" fails: wrong number of arguments in
64
- progress bar read() in Ruby 2.1.0. Submitted By Mark Reibert.
65
- * Change: Remove support for uploads to RubyForge.org with gem dependencies
66
- as the site no longer exists.
67
- * Change: BUILDR-664 - Update Checkstyle addon so that extra_dependencies is
68
- the project dependencies by default. Move the checkstyle dependencies
69
- to the start of the classpath to avoid problems running checkstyle.
70
- Submitted by Dieter Vrancken.
71
- * Added: Extend Intellij IDEA support to allow creation of glassfish,
72
- java and ruby scrip configurations.
73
- * Change: Include additional rules in default pmd rule set:
74
- * Change: Upgrade the version of PMD in use to 5.1.1 and add additional
75
- default rule sets 'finalizers' and 'braces'.
76
- * Change: Supply a default xsl file for generating the jdepend report.
77
- * Fixed: Fix the naming of css_lint addon file so it is made available
78
- as an addon.
79
-
80
75
  This is a partial list -- see the "CHANGELOG":CHANGELOG for full details.
81
76
 
82
77
  h2(#notices). Credits & Notices
@@ -135,7 +135,7 @@ EOF
135
135
  script += header.split("\n")
136
136
  script << " # you may see hints about which jars are missing and should resolve them correctly"
137
137
  script << " # dependencies << 'junit should be commented out and replace by correct ARTIFACT definition. Eg"
138
- script << " # dependencies << 'junit:junit:jar:3.8.2'"
138
+ script << " # dependencies << 'junit:junit:jar:4.11'"
139
139
  script << setLayout('src', 'bin') # default values for eclipse
140
140
  dot_projects = Dir.glob('**/.project', File::FNM_DOTMATCH).find_all { |dot_project| get_project_natures(dot_project) }
141
141
  dot_projects.sort.each { |dot_project| from_eclipse(File.dirname(dot_project), false) } if dot_projects
@@ -414,6 +414,8 @@ module Buildr #:nodoc:
414
414
  ejb_roots.each do |path|
415
415
  d = "#{path}/WEB-INF/#{descriptor}"
416
416
  default_deployment_descriptors << d if File.exist?(d)
417
+ d = "#{path}/META-INF/#{descriptor}"
418
+ default_deployment_descriptors << d if File.exist?(d)
417
419
  end
418
420
  end
419
421
  deployment_descriptors = options[:deployment_descriptors] || default_deployment_descriptors
@@ -64,6 +64,13 @@ module Buildr #:nodoc:
64
64
  end
65
65
  end
66
66
 
67
+ # Filter out source files that are known to not produce any corresponding .class output file. If we leave
68
+ # this type of file in the generated compile map the compiler will always be run due to missing output files.
69
+ def compile_map(sources, target)
70
+ map = super
71
+ map.reject! { |key,_| File.basename(key) == 'package-info.java' } || map
72
+ end
73
+
67
74
  private
68
75
 
69
76
  def javac_args #:nodoc:
@@ -96,15 +96,15 @@ module Buildr #:nodoc:
96
96
  Buildr.settings.build['jmock'] || VERSION
97
97
  end
98
98
 
99
- def dependencies
99
+ def dependencies(versions = {:hamcrest => "1.1"})
100
100
  two_or_later = version[0,1].to_i >= 2
101
101
  group = two_or_later ? "org.jmock" : "jmock"
102
102
 
103
103
  @dependencies ||= ["#{group}:jmock:jar:#{version}"]
104
104
  if two_or_later
105
105
  @dependencies << "org.jmock:jmock-junit#{Buildr::JUnit.version.to_s[0,1]}:jar:#{version}"
106
- @dependencies << "org.hamcrest:hamcrest-core:jar:1.1"
107
- @dependencies << "org.hamcrest:hamcrest-library:jar:1.1"
106
+ @dependencies << "org.hamcrest:hamcrest-core:jar:#{versions[:hamcrest]}"
107
+ @dependencies << "org.hamcrest:hamcrest-library:jar:#{versions[:hamcrest]}"
108
108
  end
109
109
  @dependencies
110
110
  end
@@ -179,7 +179,7 @@ module Buildr #:nodoc:
179
179
  end
180
180
 
181
181
  # JUnit version number.
182
- VERSION = '4.8.2'
182
+ VERSION = '4.11'
183
183
 
184
184
  class << self
185
185
  # :call-seq:
@@ -198,7 +198,8 @@ module Buildr #:nodoc:
198
198
  end
199
199
 
200
200
  def dependencies
201
- @dependencies ||= ["junit:junit:jar:#{version}"]+ JMock.dependencies
201
+ four11_or_newer = version >= "4.11"
202
+ @dependencies ||= ["junit:junit:jar:#{version}"]+ (four11_or_newer ? JMock.dependencies({:hamcrest => '1.3'}) : JMock.dependencies)
202
203
  end
203
204
 
204
205
  def ant_taskdef #:nodoc:
@@ -53,7 +53,8 @@ module Buildr #:nodoc:
53
53
  raise "Invalid requirement string: #{req}"
54
54
  end
55
55
  comparator, version = $1, $2
56
- version = Gem::Version.new(0).tap { |v| v.version = version }
56
+ # dup required due to jruby 1.7.13 bug/feature that caches versions?
57
+ version = Gem::Version.new(0).dup.tap { |v| v.version = version }
57
58
  VersionRequirement.new(nil, [$1, version])
58
59
  end
59
60
 
@@ -122,7 +123,8 @@ module Buildr #:nodoc:
122
123
  return false unless version
123
124
  unless version.kind_of?(Gem::Version)
124
125
  raise "Invalid version: #{version.inspect}" unless self.class.version?(version)
125
- version = Gem::Version.new(0).tap { |v| v.version = version.strip }
126
+ # dup required due to jruby 1.7.13 bug/feature that caches versions?
127
+ version = Gem::Version.new(0).dup.tap { |v| v.version = version.strip }
126
128
  end
127
129
  message = op == :| ? :any? : :all?
128
130
  result = requirements.send message do |req|
@@ -17,11 +17,10 @@
17
17
  # Rubygems 1.3.6 removed the 'version' accessor so monkey-patch it back to
18
18
  # circumvent version validation. This is needed because Gem::Version doesn't
19
19
  # accept version specs with dashes.
20
- unless Gem::Version.new(0).respond_to?(:version=)
20
+ unless Gem::Version.new("0").respond_to?(:version=)
21
21
  class Gem::Version
22
22
  def version=(version)
23
- @version = version.to_s
24
- @version.strip!
23
+ @version = version.to_s.strip
25
24
 
26
25
  # re-prime @segments
27
26
  @segments = nil
@@ -73,7 +72,8 @@ module Buildr #:nodoc:
73
72
  raise "Invalid requirement string: #{req}"
74
73
  end
75
74
  comparator, version = $1, $2
76
- version = Gem::Version.new(0).tap { |v| v.version = version }
75
+ # dup required due to jruby 1.7.13 bug/feature that caches versions?
76
+ version = Gem::Version.new(0).dup.tap { |v| v.version = version }
77
77
  VersionRequirement.new(nil, [$1, version])
78
78
  end
79
79
 
@@ -142,7 +142,8 @@ module Buildr #:nodoc:
142
142
  return false unless version
143
143
  unless version.kind_of?(Gem::Version)
144
144
  raise "Invalid version: #{version.inspect}" unless self.class.version?(version)
145
- version = Gem::Version.new(0).tap { |v| v.version = version.strip }
145
+ # dup required due to jruby 1.7.13 bug/feature that caches versions?
146
+ version = Gem::Version.new(0).dup.tap { |v| v.version = version.strip }
146
147
  end
147
148
  message = op == :| ? :any? : :all?
148
149
  result = requirements.send message do |req|
@@ -14,5 +14,5 @@
14
14
  # the License.
15
15
 
16
16
  module Buildr #:nodoc:
17
- VERSION = '1.4.19'.freeze
17
+ VERSION = '1.4.20'.freeze
18
18
  end
@@ -106,6 +106,13 @@ describe 'javac compiler' do
106
106
  define('foo').compile.invoke
107
107
  file('target/classes/UseApt.class').should exist
108
108
  end
109
+
110
+ it 'should ignore package-info.java files in up-to-date check' do
111
+ write 'src/main/java/foo/Test.java', 'package foo; class Test { public void foo() {} }'
112
+ write 'src/main/java/foo/package-info.java', 'package foo;'
113
+ lambda{ define('foo').compile.invoke }.should run_task('foo:compile')
114
+ lambda{ define('bar').compile.invoke }.should_not run_task('bar:compile')
115
+ end
109
116
  end
110
117
 
111
118
 
@@ -60,6 +60,24 @@ describe Buildr::JUnit do
60
60
  project('foo').test.dependencies.should include(artifact("#{group}:jmock:jar:#{JMock.version}"))
61
61
  end
62
62
 
63
+ it 'should not include Hamcrest dependencies for JUnit < 4.11' do
64
+ begin
65
+ Buildr.settings.build['junit'] = '4.10'
66
+ define('foo') { test.using :junit }
67
+ project('foo').test.compile.dependencies.should_not include(artifact("org.hamcrest:hamcrest-core:jar:1.3"))
68
+ project('foo').test.dependencies.should_not include(artifact("org.hamcrest:hamcrest-core:jar:1.3"))
69
+ ensure
70
+ Buildr.settings.build['junit'] = nil
71
+ end
72
+ end
73
+
74
+ it 'should include Hamcrest dependencies for JUnit >= 4.11' do
75
+ define('foo') { test.using :junit }
76
+ project('foo').test.compile.dependencies.should include(artifact("org.hamcrest:hamcrest-core:jar:1.3"))
77
+ project('foo').test.dependencies.should include(artifact("org.hamcrest:hamcrest-core:jar:1.3"))
78
+ end
79
+
80
+
63
81
  it 'should pick JUnit version from junit build settings' do
64
82
  Buildr::JUnit.instance_eval { @dependencies = nil } # JUnit caches JMock dependencies
65
83
  Buildr::JMock.instance_eval { @dependencies = nil }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: buildr
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.19
4
+ version: 1.4.20
5
5
  platform: ruby
6
6
  authors:
7
7
  - Apache Buildr
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-06 00:00:00.000000000 Z
11
+ date: 2014-08-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -114,14 +114,14 @@ dependencies:
114
114
  requirements:
115
115
  - - '='
116
116
  - !ruby/object:Gem::Version
117
- version: 1.4.8
117
+ version: 1.4.9
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - '='
123
123
  - !ruby/object:Gem::Version
124
- version: 1.4.8
124
+ version: 1.4.9
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: atoulme-Antwrap
127
127
  requirement: !ruby/object:Gem::Requirement