buildr-findBugs 0.1.0 → 0.1.1
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/buildr-findBugs.gemspec +1 -1
- data/lib/buildr-findBugs.rb +49 -37
- metadata +27 -9
data/buildr-findBugs.gemspec
CHANGED
@@ -16,7 +16,7 @@
|
|
16
16
|
|
17
17
|
Gem::Specification.new do |spec|
|
18
18
|
spec.name = 'buildr-findBugs'
|
19
|
-
spec.version = '0.1.
|
19
|
+
spec.version = '0.1.1'
|
20
20
|
spec.author = 'Antoine Toulme'
|
21
21
|
spec.email = "atoulme@intalio.com"
|
22
22
|
spec.homepage = "http://www.github.com/intalio/buildr-findBugs"
|
data/lib/buildr-findBugs.rb
CHANGED
@@ -3,68 +3,79 @@
|
|
3
3
|
module Buildr
|
4
4
|
module FindBugs
|
5
5
|
include Extension
|
6
|
+
VERSION = "1.3.9"
|
7
|
+
|
8
|
+
class << self
|
9
|
+
def version
|
10
|
+
Buildr.settings.build['findbugs'] || VERSION
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
REQUIRES = ["com.google.code.findbugs:findbugs-ant:jar:#{version}"]
|
15
|
+
|
16
|
+
class << self
|
17
|
+
def requires
|
18
|
+
@requires ||= Buildr.transitive(REQUIRES).each(& :invoke).map(& :to_s)
|
19
|
+
end
|
20
|
+
end
|
6
21
|
|
7
22
|
class FindBugsTask < Rake::Task
|
8
23
|
|
9
24
|
attr_reader :project
|
10
|
-
|
11
|
-
attr_writer :sourcePath, :auxAnalyzePath, :auxClasspath, :jvmargs, :report
|
12
25
|
|
13
|
-
|
26
|
+
attr_writer :sourcePath, :auxAnalyzePath, :auxClasspath, :jvmargs, :report, :excludeFilter
|
27
|
+
|
28
|
+
def initialize(* args) #:nodoc:
|
14
29
|
super
|
15
|
-
enhance do
|
16
|
-
raise "Cannot run Findbugs, FINDBUGS_HOME undefined" unless defined? ENV['FINDBUGS_HOME']
|
30
|
+
enhance([:compile]) do
|
17
31
|
mkpath File.dirname(report) #otherwise Findbugs can't create the file
|
18
|
-
|
32
|
+
|
19
33
|
Buildr.ant('findBugs') do |ant|
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
# We use a huge classpath.
|
24
|
-
ant.path :id => refid do
|
25
|
-
[[auxClasspath] + artifacts].flatten.each do |elt|
|
26
|
-
ant.pathelement :location => elt
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
34
|
+
antClasspath = FindBugs.requires.join(File::PATH_SEPARATOR)
|
35
|
+
excludeFilterFile = File.expand_path(excludeFilter)
|
36
|
+
|
30
37
|
ant.taskdef :name=>'findBugs',
|
31
|
-
|
32
|
-
|
33
|
-
|
38
|
+
:classname=>'edu.umd.cs.findbugs.anttask.FindBugsTask',
|
39
|
+
:classpath => antClasspath
|
40
|
+
ant.findBugs :output => "xml", :outputFile => report, :classpath => antClasspath, :pluginList => '', :jvmargs => jvmargs, :excludeFilter => excludeFilterFile do
|
41
|
+
ant.sourcePath :path => sourcePath
|
34
42
|
ant.auxAnalyzePath :path => auxAnalyzePath
|
35
|
-
ant.auxClasspath :
|
43
|
+
ant.auxClasspath { |aux| auxClasspath.each { |dep| aux.pathelement :location => dep } } unless auxClasspath.empty?
|
36
44
|
end
|
37
45
|
|
38
46
|
end
|
39
47
|
|
40
48
|
end
|
41
49
|
end
|
42
|
-
|
50
|
+
|
43
51
|
def report
|
44
52
|
@report || project.path_to(:reports, "findbugs.xml")
|
45
53
|
end
|
46
|
-
|
54
|
+
|
47
55
|
def sourcePath
|
48
56
|
@sourcePath || project.compile.sources.select { |source| File.directory?(source.to_s) }.join(File::PATH_SEPARATOR)
|
49
57
|
end
|
50
|
-
|
58
|
+
|
51
59
|
def auxAnalyzePath
|
52
60
|
@auxAnalyzePath || project.compile.target
|
53
61
|
end
|
54
|
-
|
62
|
+
|
55
63
|
def auxClasspath
|
56
|
-
@auxClasspath ||
|
64
|
+
@auxClasspath || project.compile.dependencies
|
57
65
|
end
|
58
|
-
|
66
|
+
|
59
67
|
def jvmargs
|
60
68
|
@jvmargs || "-Xmx512m"
|
61
69
|
end
|
62
|
-
|
70
|
+
|
71
|
+
def excludeFilter
|
72
|
+
@excludeFilter || project.path_to("exclude_filter.xml")
|
73
|
+
end
|
63
74
|
|
64
75
|
# :call-seq:
|
65
76
|
# with(options) => self
|
66
77
|
#
|
67
|
-
# Passes options to the task and returns self.
|
78
|
+
# Passes options to the task and returns self.
|
68
79
|
#
|
69
80
|
def with(options)
|
70
81
|
options.each do |key, value|
|
@@ -76,14 +87,14 @@ module Buildr
|
|
76
87
|
end
|
77
88
|
self
|
78
89
|
end
|
79
|
-
|
80
|
-
private
|
90
|
+
|
91
|
+
private
|
81
92
|
|
82
93
|
def associate_with(project)
|
83
94
|
@project = project
|
84
|
-
end
|
85
|
-
|
86
|
-
|
95
|
+
end
|
96
|
+
|
97
|
+
|
87
98
|
end
|
88
99
|
|
89
100
|
first_time do
|
@@ -97,18 +108,19 @@ module Buildr
|
|
97
108
|
project.recursive_task('findBugs')
|
98
109
|
end
|
99
110
|
|
100
|
-
after_define do |project|
|
111
|
+
after_define do |project|
|
101
112
|
project.clean do
|
102
113
|
rm_rf project.path_to(:reports, "findbugs.xml")
|
103
114
|
end
|
104
115
|
end
|
105
116
|
|
106
|
-
def findBugs(*deps, &block)
|
107
|
-
task('findBugs').enhance deps, &block
|
117
|
+
def findBugs(* deps, & block)
|
118
|
+
task('findBugs').enhance deps, & block
|
108
119
|
end
|
109
120
|
end
|
110
121
|
end
|
111
122
|
|
112
123
|
class Buildr::Project
|
113
124
|
include Buildr::FindBugs
|
114
|
-
end
|
125
|
+
end
|
126
|
+
|
metadata
CHANGED
@@ -1,7 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: buildr-findBugs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
hash: 25
|
5
|
+
prerelease: false
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 1
|
9
|
+
- 1
|
10
|
+
version: 0.1.1
|
5
11
|
platform: ruby
|
6
12
|
authors:
|
7
13
|
- Antoine Toulme
|
@@ -9,19 +15,25 @@ autorequire:
|
|
9
15
|
bindir: bin
|
10
16
|
cert_chain: []
|
11
17
|
|
12
|
-
date: 2010-
|
18
|
+
date: 2010-08-09 00:00:00 +02:00
|
13
19
|
default_executable:
|
14
20
|
dependencies:
|
15
21
|
- !ruby/object:Gem::Dependency
|
16
22
|
name: buildr
|
17
|
-
|
18
|
-
|
19
|
-
|
23
|
+
prerelease: false
|
24
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
20
26
|
requirements:
|
21
27
|
- - ">="
|
22
28
|
- !ruby/object:Gem::Version
|
29
|
+
hash: 7
|
30
|
+
segments:
|
31
|
+
- 1
|
32
|
+
- 4
|
33
|
+
- 0
|
23
34
|
version: 1.4.0
|
24
|
-
|
35
|
+
type: :runtime
|
36
|
+
version_requirements: *id001
|
25
37
|
description: |
|
26
38
|
Adds a task to help run FindBugs over your code.
|
27
39
|
|
@@ -50,21 +62,27 @@ rdoc_options: []
|
|
50
62
|
require_paths:
|
51
63
|
- lib
|
52
64
|
required_ruby_version: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
53
66
|
requirements:
|
54
67
|
- - ">="
|
55
68
|
- !ruby/object:Gem::Version
|
69
|
+
hash: 3
|
70
|
+
segments:
|
71
|
+
- 0
|
56
72
|
version: "0"
|
57
|
-
version:
|
58
73
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
74
|
+
none: false
|
59
75
|
requirements:
|
60
76
|
- - ">="
|
61
77
|
- !ruby/object:Gem::Version
|
78
|
+
hash: 3
|
79
|
+
segments:
|
80
|
+
- 0
|
62
81
|
version: "0"
|
63
|
-
version:
|
64
82
|
requirements: []
|
65
83
|
|
66
84
|
rubyforge_project:
|
67
|
-
rubygems_version: 1.3.
|
85
|
+
rubygems_version: 1.3.7
|
68
86
|
signing_key:
|
69
87
|
specification_version: 3
|
70
88
|
summary: A plugin for adding FindBugs support to Buildr.
|