roodi 4.0.0 → 4.1.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2ab2ed299bfa842d1d9277298e935a13031c3c8e
4
- data.tar.gz: f6dea634c1ac06362efa77deaa69a2d345124073
3
+ metadata.gz: 434e62a4e7cd6f677ac5e0277643524a208536c9
4
+ data.tar.gz: ce8d3e9530cbfedfc6cccc2aade0a34f30a9362b
5
5
  SHA512:
6
- metadata.gz: ca825a45d5228fae1e4433434b6b7e23b43a5555082ecee52056ed57c56ff6ee29fae6de60a6cdaade1b885f9c2d505860a841d89b65c94b0e07a14ea40e2494
7
- data.tar.gz: ce3b701a23cf3f5a14e9d826e28a7f0f23fce0073a49f24350328e2b3f6e288b57aff18da7c34086d9078c1c8e72f284620a7582e347dd668fff2a55ce37a7df
6
+ metadata.gz: 4624066ec0088e5fed1d213f9ccd52c4e536ff9a8b299ebc1d5fbbe9316cc64fd60d8c7db914e1362cae8d953e12f73eb6a8ca017f0987169a542f7da07ec613
7
+ data.tar.gz: 933e4aa1d43a94b4b310e81d2dbca2b259847cfadaacbae6ebd9fb7c3d8b58f83e2e60fecf713d24622f365430e72131b7df43697e84e23b34740fc846146eb0
@@ -3,4 +3,5 @@ rvm:
3
3
  - 1.9.2
4
4
  - 1.9.3
5
5
  - 2.0.0
6
+ - 2.1.2
6
7
  - jruby-19mode # JRuby in 1.9 mode
@@ -1,14 +1,14 @@
1
- = 4.0.0
1
+ # 4.0.0
2
2
  * Send args to roodi_task will make it easier to add custom configuration (breaking backwards compatibility)
3
3
 
4
- = 3.3.1
4
+ # 3.3.1
5
5
  * Not checking .erb files by default
6
6
 
7
- = 3.3.0
7
+ # 3.3.0
8
8
  * Using the roodi.yml in the current folder by default if it exists
9
9
  * Added coloured output
10
10
 
11
- = 3.2.0
11
+ # 3.2.0
12
12
  * Checks all files under current directory by default
13
13
  * Made it easier to run for the whole project as a rake task
14
14
  * Added instructions for how to add Roodi to your Rakefile
@@ -16,17 +16,17 @@
16
16
  * Removed support for Ruby 1.8
17
17
  * Improved installation instructions and corrected spelling error
18
18
 
19
- = 3.1.1
19
+ # 3.1.1
20
20
  * Merge pull request #23 from metricfu/remove_rubygems_require
21
21
  * Fix ruby warnings
22
22
  * Remove unnecessary require of rubygems
23
23
 
24
- = 3.1.0
24
+ # 3.1.0
25
25
  * Loosen ruby_parser version dependency (PR from Benjamin Fleischer)
26
26
  * Files that can't be parsed are no longer silently skipped
27
27
  * Empty rescue body check not failing when block contains empty arrays etc
28
28
 
29
- = 3.0.1
29
+ # 3.0.1
30
30
 
31
31
  * Added brief class level documentation on all checks
32
32
  * No longer printing out "Line: 1" every time you run roodi-describe
@@ -38,7 +38,7 @@
38
38
  * Updated copyright info to be current
39
39
  * Re-added tasks for releasing new versions of the gem
40
40
 
41
- = 3.0.0
41
+ # 3.0.0
42
42
 
43
43
  * Removed MissingForeignKeyIndexCheck, since it is specific to Rails/ActiveRecord and thus doesn't belong in Roodi
44
44
  * A build is now running on Travis for the following Ruby versions: 1.8, 1.9, 2.0, JRuby 1.8 mode, JRuby 1.9 mode, Rubinius 1.8 mode, Rubinius 1.9 mode, Ruby Enterprise Edition
@@ -48,11 +48,11 @@
48
48
  * Rescue line count when there are no lines
49
49
  * Pull down updates from https://github.com/zdennis/roodi that includes updates from https://github.com/hooroo/roodi and https://github.com/aselder/roodi re: pull request https://github.com/martinjandrews/roodi/pull/12 https://github.com/martinjandrews/roodi/pull/11
50
50
 
51
- = 2.0.1
51
+ # 2.0.1
52
52
 
53
53
  * Fixed a bug where roodi.yml was not being loaded. Patch supplied by Rob Mitchell.
54
54
 
55
- = 2.0.0
55
+ # 2.0.0
56
56
 
57
57
  * Changed internal structure to use a more pure visitor like pattern.
58
58
  * Got *much* faster as a result of the change.
@@ -60,35 +60,35 @@
60
60
  * Outline for NPath complexity check is now possible. Not working yet though.
61
61
  * Removed dependency on facets library.
62
62
 
63
- = 1.4.0
63
+ # 1.4.0
64
64
 
65
65
  * Upgraded from ParseTree to ruby_parser.
66
66
 
67
- = 1.3.7
67
+ # 1.3.7
68
68
 
69
69
  * Fixed a bug in the rake task where it always failed even if no errors existed.
70
70
 
71
- = 1.3.6
71
+ # 1.3.6
72
72
 
73
73
  * Added nil as a valid response for an empty rescue block
74
74
 
75
- = 1.3.5
75
+ # 1.3.5
76
76
 
77
77
  * Fixed bug in rake task
78
78
 
79
- = 1.3.4
79
+ # 1.3.4
80
80
 
81
81
  * Minor cleanup
82
82
 
83
- = 1.3.3
83
+ # 1.3.3
84
84
 
85
85
  * Added a rake task
86
86
 
87
- = 1.3.1
87
+ # 1.3.1
88
88
 
89
89
  * wrapped errors in an object to become more usable as an API.
90
90
 
91
- = 1.3.0
91
+ # 1.3.0
92
92
 
93
93
  * added case missing else check.
94
94
  * updated checks to take a hash of options with built-in defaults.
@@ -97,19 +97,19 @@
97
97
  * added assignment in conditional check.
98
98
  * refactored checks to remove duplicate code.
99
99
 
100
- = 1.2.0
100
+ # 1.2.0
101
101
 
102
102
  * added module name check.
103
103
  * added parameter number check.
104
104
  * added module line count check.
105
105
  * added class line count check.
106
106
 
107
- = 1.1.1
107
+ # 1.1.1
108
108
 
109
109
  * I'd initially published to Rubyforge under a 1.0.0 gem, and I've since tried to retrospectively fix up the version number system. It turns out that Rubyforge caches old gems permanently, so I have to re-start at a larger number again.
110
110
  * class name check no longer gets confused about scoped class names like Module::Classname.
111
111
 
112
- = 0.5
112
+ # 0.5
113
113
 
114
114
  * expanded regex matching for method name check.
115
115
  * suppressed noisy output from ParseTree using facets API.
@@ -117,22 +117,22 @@
117
117
  * made Roodi tolerant of being asked to parse files which aren't really Ruby files.
118
118
  * updated the documentation with usage examples.
119
119
 
120
- = 0.4
120
+ # 0.4
121
121
 
122
122
  * Added support back in for line numbers in error messages.
123
123
  * Re-enabled MethodLineCountCheck as part of the default check set.
124
124
 
125
- = 0.3
125
+ # 0.3
126
126
 
127
127
  * First version of Roodi to be published to Rubyforge.
128
128
 
129
- = 0.2
129
+ # 0.2
130
130
 
131
131
  * Now use ParseTree instead of JRuby, which makes the tool much more accessible.
132
132
  * Removed MagicNumberCheck
133
133
  * Line numbers no longer supported as a result of the move.
134
134
 
135
- = 0.1
135
+ # 0.1
136
136
 
137
137
  * A first version of a design checking tool for Ruby, with a few checks built in to get started.
138
138
 
data/README.md CHANGED
@@ -54,7 +54,6 @@ If you're writing a check, it is useful to see the structure of a file the way t
54
54
  Add the following to your Rakefile:
55
55
 
56
56
  require 'roodi_task'
57
- RoodiTask.new
58
57
  task :default => [:roodi]
59
58
 
60
59
  or if you want to supply your own config file...
@@ -1,3 +1,3 @@
1
1
  module Roodi
2
- VERSION = '4.0.0'
2
+ VERSION = '4.1.0'
3
3
  end
@@ -19,6 +19,8 @@ class RoodiTask < Rake::TaskLib
19
19
  end
20
20
 
21
21
  def define
22
+ prevent_multiple_runs!
23
+
22
24
  desc "Run Roodi against all source files"
23
25
  task name do
24
26
  runner = Roodi::Core::Runner.new
@@ -29,4 +31,15 @@ class RoodiTask < Rake::TaskLib
29
31
  end
30
32
  self
31
33
  end
34
+
35
+ private
36
+
37
+ def prevent_multiple_runs!
38
+ if Rake::Task.task_defined?(name)
39
+ Rake::Task[name].clear
40
+ end
41
+ end
32
42
  end
43
+
44
+ # Ensure that a default :roodi task is always available
45
+ RoodiTask.new
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: roodi
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.0
4
+ version: 4.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marty Andrews
@@ -9,26 +9,26 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-04-10 00:00:00.000000000 Z
12
+ date: 2015-01-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: ruby_parser
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - '>='
18
+ - - ">="
19
19
  - !ruby/object:Gem::Version
20
20
  version: 3.2.2
21
- - - ~>
21
+ - - "~>"
22
22
  - !ruby/object:Gem::Version
23
23
  version: '3.2'
24
24
  type: :runtime
25
25
  prerelease: false
26
26
  version_requirements: !ruby/object:Gem::Requirement
27
27
  requirements:
28
- - - '>='
28
+ - - ">="
29
29
  - !ruby/object:Gem::Version
30
30
  version: 3.2.2
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '3.2'
34
34
  description: Roodi parses your Ruby code and warns you about design issues you have
@@ -40,10 +40,10 @@ executables:
40
40
  extensions: []
41
41
  extra_rdoc_files: []
42
42
  files:
43
- - .gitignore
44
- - .travis.yml
43
+ - ".gitignore"
44
+ - ".travis.yml"
45
45
  - Gemfile
46
- - History.txt
46
+ - History.md
47
47
  - Manifest.txt
48
48
  - README.md
49
49
  - Rakefile
@@ -116,17 +116,17 @@ require_paths:
116
116
  - lib
117
117
  required_ruby_version: !ruby/object:Gem::Requirement
118
118
  requirements:
119
- - - '>='
119
+ - - ">="
120
120
  - !ruby/object:Gem::Version
121
121
  version: '0'
122
122
  required_rubygems_version: !ruby/object:Gem::Requirement
123
123
  requirements:
124
- - - '>='
124
+ - - ">="
125
125
  - !ruby/object:Gem::Version
126
126
  version: '0'
127
127
  requirements: []
128
128
  rubyforge_project:
129
- rubygems_version: 2.0.14
129
+ rubygems_version: 2.2.2
130
130
  signing_key:
131
131
  specification_version: 4
132
132
  summary: Roodi stands for Ruby Object Oriented Design Inferometer