maximus 0.1.1 → 0.1.2
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 +4 -4
- data/README.md +2 -0
- data/lib/maximus.rb +0 -1
- data/lib/maximus/cli.rb +2 -1
- data/lib/maximus/constants.rb +2 -0
- data/lib/maximus/git_control.rb +94 -33
- data/lib/maximus/helper.rb +73 -36
- data/lib/maximus/lint.rb +46 -29
- data/lib/maximus/lints/brakeman.rb +11 -2
- data/lib/maximus/lints/jshint.rb +3 -0
- data/lib/maximus/lints/railsbp.rb +11 -2
- data/lib/maximus/lints/rubocop.rb +3 -0
- data/lib/maximus/lints/scsslint.rb +3 -0
- data/lib/maximus/reporter/git-lines.sh +1 -1
- data/lib/maximus/statistic.rb +22 -13
- data/lib/maximus/statistics/phantomas.rb +5 -2
- data/lib/maximus/statistics/stylestats.rb +17 -11
- data/lib/maximus/statistics/wraith.rb +8 -4
- data/lib/maximus/version.rb +1 -1
- data/maximus.gemspec +3 -4
- data/roadmap.md +2 -4
- metadata +33 -51
- data/lib/maximus/rake_tasks.rb +0 -13
- data/lib/maximus/tasks/be.rake +0 -35
- data/lib/maximus/tasks/fe.rake +0 -30
- data/lib/maximus/tasks/maximus.rake +0 -39
- data/lib/maximus/tasks/statistic.rake +0 -26
data/lib/maximus/version.rb
CHANGED
data/maximus.gemspec
CHANGED
@@ -18,15 +18,14 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
19
|
spec.require_paths = ["lib"]
|
20
20
|
|
21
|
-
spec.add_runtime_dependency "git"
|
22
|
-
spec.add_runtime_dependency "scss-lint"
|
23
|
-
spec.add_runtime_dependency "rainbow"
|
21
|
+
spec.add_runtime_dependency "git", ">= 1.2.8"
|
22
|
+
spec.add_runtime_dependency "scss-lint", ">= 0.31.0"
|
23
|
+
spec.add_runtime_dependency "rainbow", "~> 2.0.0"
|
24
24
|
spec.add_runtime_dependency "rubocop"
|
25
25
|
spec.add_runtime_dependency "rails_best_practices"
|
26
26
|
spec.add_runtime_dependency "brakeman"
|
27
27
|
spec.add_runtime_dependency "wraith"
|
28
28
|
spec.add_runtime_dependency "activesupport"
|
29
29
|
spec.add_runtime_dependency "thor"
|
30
|
-
spec.add_runtime_dependency "rake"
|
31
30
|
spec.add_development_dependency "bundler", "~> 1.6"
|
32
31
|
end
|
data/roadmap.md
CHANGED
@@ -1,17 +1,15 @@
|
|
1
1
|
# Roadmap
|
2
2
|
|
3
|
-
* Check for a maximus.yml config file (for base_url, config_url, etc.)
|
3
|
+
* Check for a maximus.yml config file (for base_url, config_url, etc.) and load config globally when starting, or something similar - calling is_dev happens too often
|
4
4
|
* Check for custom lint or stat hooks in a lib/maximus folder
|
5
5
|
* Use PhantomJS 2.0 with webfont support
|
6
|
-
* Install task
|
7
6
|
* Resolve/review TODOs
|
8
7
|
* Tests and specs
|
9
|
-
* Load config globally when starting, or something similar - calling is_dev happens too often
|
10
8
|
* Convert ruby-git to rugged (MAYBE - rugged requires libgit2)
|
11
9
|
* Add SCSS specificity graph
|
12
10
|
* Add HAML lint (maybe)
|
13
11
|
* Add CSS lint (maybe)
|
14
12
|
* Add JSLint (maybe)
|
15
13
|
* Add W3 validator (maybe)
|
16
|
-
* Write tests
|
17
14
|
* Regex path names on phantomas and wraith to defend against injection and bad characters
|
15
|
+
* include lines_added in this GitControll#diff output
|
metadata
CHANGED
@@ -1,167 +1,153 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: maximus
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tim Shedor
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-12-
|
11
|
+
date: 2014-12-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: git
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 1.2.8
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 1.2.8
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: scss-lint
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: 0.31.0
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
40
|
+
version: 0.31.0
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rainbow
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
47
|
+
version: 2.0.0
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
54
|
+
version: 2.0.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rubocop
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rails_best_practices
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- -
|
73
|
+
- - ">="
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: '0'
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- -
|
80
|
+
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: brakeman
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- -
|
87
|
+
- - ">="
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: '0'
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- -
|
94
|
+
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: wraith
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- -
|
101
|
+
- - ">="
|
102
102
|
- !ruby/object:Gem::Version
|
103
103
|
version: '0'
|
104
104
|
type: :runtime
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- -
|
108
|
+
- - ">="
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: activesupport
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
|
-
- -
|
115
|
+
- - ">="
|
116
116
|
- !ruby/object:Gem::Version
|
117
117
|
version: '0'
|
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
124
|
version: '0'
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
126
|
name: thor
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
|
-
- -
|
130
|
-
- !ruby/object:Gem::Version
|
131
|
-
version: '0'
|
132
|
-
type: :runtime
|
133
|
-
prerelease: false
|
134
|
-
version_requirements: !ruby/object:Gem::Requirement
|
135
|
-
requirements:
|
136
|
-
- - '>='
|
137
|
-
- !ruby/object:Gem::Version
|
138
|
-
version: '0'
|
139
|
-
- !ruby/object:Gem::Dependency
|
140
|
-
name: rake
|
141
|
-
requirement: !ruby/object:Gem::Requirement
|
142
|
-
requirements:
|
143
|
-
- - '>='
|
129
|
+
- - ">="
|
144
130
|
- !ruby/object:Gem::Version
|
145
131
|
version: '0'
|
146
132
|
type: :runtime
|
147
133
|
prerelease: false
|
148
134
|
version_requirements: !ruby/object:Gem::Requirement
|
149
135
|
requirements:
|
150
|
-
- -
|
136
|
+
- - ">="
|
151
137
|
- !ruby/object:Gem::Version
|
152
138
|
version: '0'
|
153
139
|
- !ruby/object:Gem::Dependency
|
154
140
|
name: bundler
|
155
141
|
requirement: !ruby/object:Gem::Requirement
|
156
142
|
requirements:
|
157
|
-
- - ~>
|
143
|
+
- - "~>"
|
158
144
|
- !ruby/object:Gem::Version
|
159
145
|
version: '1.6'
|
160
146
|
type: :development
|
161
147
|
prerelease: false
|
162
148
|
version_requirements: !ruby/object:Gem::Requirement
|
163
149
|
requirements:
|
164
|
-
- - ~>
|
150
|
+
- - "~>"
|
165
151
|
- !ruby/object:Gem::Version
|
166
152
|
version: '1.6'
|
167
153
|
description: The all-in-one linting solution
|
@@ -172,7 +158,7 @@ executables:
|
|
172
158
|
extensions: []
|
173
159
|
extra_rdoc_files: []
|
174
160
|
files:
|
175
|
-
- .gitignore
|
161
|
+
- ".gitignore"
|
176
162
|
- Gemfile
|
177
163
|
- LICENSE.txt
|
178
164
|
- README.md
|
@@ -200,7 +186,6 @@ files:
|
|
200
186
|
- lib/maximus/lints/railsbp.rb
|
201
187
|
- lib/maximus/lints/rubocop.rb
|
202
188
|
- lib/maximus/lints/scsslint.rb
|
203
|
-
- lib/maximus/rake_tasks.rb
|
204
189
|
- lib/maximus/reporter/git-lines.sh
|
205
190
|
- lib/maximus/reporter/jshint.js
|
206
191
|
- lib/maximus/reporter/rubocop.rb
|
@@ -208,10 +193,6 @@ files:
|
|
208
193
|
- lib/maximus/statistics/phantomas.rb
|
209
194
|
- lib/maximus/statistics/stylestats.rb
|
210
195
|
- lib/maximus/statistics/wraith.rb
|
211
|
-
- lib/maximus/tasks/be.rake
|
212
|
-
- lib/maximus/tasks/fe.rake
|
213
|
-
- lib/maximus/tasks/maximus.rake
|
214
|
-
- lib/maximus/tasks/statistic.rake
|
215
196
|
- lib/maximus/version.rb
|
216
197
|
- maximus.gemspec
|
217
198
|
- roadmap.md
|
@@ -225,18 +206,19 @@ require_paths:
|
|
225
206
|
- lib
|
226
207
|
required_ruby_version: !ruby/object:Gem::Requirement
|
227
208
|
requirements:
|
228
|
-
- -
|
209
|
+
- - ">="
|
229
210
|
- !ruby/object:Gem::Version
|
230
211
|
version: '0'
|
231
212
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
232
213
|
requirements:
|
233
|
-
- -
|
214
|
+
- - ">="
|
234
215
|
- !ruby/object:Gem::Version
|
235
216
|
version: '0'
|
236
217
|
requirements: []
|
237
218
|
rubyforge_project:
|
238
|
-
rubygems_version: 2.
|
219
|
+
rubygems_version: 2.2.2
|
239
220
|
signing_key:
|
240
221
|
specification_version: 4
|
241
222
|
summary: Make your code spic and <span>
|
242
223
|
test_files: []
|
224
|
+
has_rdoc:
|
data/lib/maximus/rake_tasks.rb
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
require 'rake'
|
2
|
-
|
3
|
-
if defined?(Rails)
|
4
|
-
module Maximus
|
5
|
-
class Railtie < Rails::Railtie
|
6
|
-
rake_tasks do
|
7
|
-
Dir[File.join(File.dirname(__FILE__),'tasks/*.rake')].each { |f| load f }
|
8
|
-
end
|
9
|
-
end
|
10
|
-
end
|
11
|
-
else
|
12
|
-
Dir[File.join(File.dirname(__FILE__),'tasks/*.rake')].each { |f| load f }
|
13
|
-
end
|
data/lib/maximus/tasks/be.rake
DELETED
@@ -1,35 +0,0 @@
|
|
1
|
-
desc "Run some sweet lint scripts for the back-end"
|
2
|
-
namespace :maximus do
|
3
|
-
namespace :be do
|
4
|
-
|
5
|
-
desc "Run rubocop"
|
6
|
-
task :rubocop, :path do |t, args|
|
7
|
-
Maximus::Rubocop.new({ path: args[:path] }).result
|
8
|
-
end
|
9
|
-
|
10
|
-
desc "Run rails_best_practices"
|
11
|
-
task :railsbp, :path do |t, args|
|
12
|
-
Maximus::Railsbp.new({ path: args[:path] }).result
|
13
|
-
end
|
14
|
-
# alias by full name
|
15
|
-
task :rails_best_practices => :railsbp
|
16
|
-
|
17
|
-
desc "Run brakeman"
|
18
|
-
task :brakeman, :path do |t, args|
|
19
|
-
Maximus::Brakeman.new({ path: args[:path] }).result
|
20
|
-
end
|
21
|
-
|
22
|
-
desc "Execute all back-end tasks"
|
23
|
-
task :all do
|
24
|
-
Rake::Task['maximus:be:rubocop'].invoke
|
25
|
-
if defined?(Rails)
|
26
|
-
Rake::Task['maximus:be:railsbp'].invoke
|
27
|
-
Rake::Task['maximus:be:brakeman'].invoke
|
28
|
-
end
|
29
|
-
end
|
30
|
-
# alias by extension
|
31
|
-
task :rb => :all
|
32
|
-
|
33
|
-
end
|
34
|
-
|
35
|
-
end
|
data/lib/maximus/tasks/fe.rake
DELETED
@@ -1,30 +0,0 @@
|
|
1
|
-
desc "Run some sweet lint scripts for the front-end"
|
2
|
-
namespace :maximus do
|
3
|
-
|
4
|
-
namespace :fe do
|
5
|
-
|
6
|
-
desc "Run scss-lint"
|
7
|
-
task :scsslint, :path do |t, args|
|
8
|
-
Maximus::Scsslint.new({ path: args[:path] }).result
|
9
|
-
end
|
10
|
-
# alias by extension
|
11
|
-
task :scss, [:path] => :scsslint
|
12
|
-
|
13
|
-
desc "Run jshint (node required)"
|
14
|
-
task :jshint, :path do |t, args|
|
15
|
-
Maximus::Jshint.new({ path: args[:path] }).result
|
16
|
-
end
|
17
|
-
# alias by extension
|
18
|
-
task :js, [:path] => :jshint
|
19
|
-
|
20
|
-
desc "Execute all front-end tasks"
|
21
|
-
task :all => [:scsslint, :jshint]
|
22
|
-
|
23
|
-
end
|
24
|
-
|
25
|
-
desc "Execute all front-end tasks"
|
26
|
-
task :fe do
|
27
|
-
Rake::Task['maximus:fe:all'].invoke
|
28
|
-
end
|
29
|
-
|
30
|
-
end
|
@@ -1,39 +0,0 @@
|
|
1
|
-
desc "Run all lint tasks for front-end, back-end, statistics, and a bonus compare"
|
2
|
-
namespace :maximus do
|
3
|
-
|
4
|
-
desc "Execute all front-end tasks"
|
5
|
-
task :fe do
|
6
|
-
Rake::Task['maximus:fe:all'].invoke
|
7
|
-
end
|
8
|
-
# alias by longer name
|
9
|
-
task :front => :fe
|
10
|
-
|
11
|
-
desc "Execute all back-end tasks"
|
12
|
-
task :be do
|
13
|
-
Rake::Task['maximus:be:all'].invoke
|
14
|
-
end
|
15
|
-
# alias by longer name
|
16
|
-
task :back => :be
|
17
|
-
|
18
|
-
desc "Execute all statistics tasks"
|
19
|
-
task :statistic do
|
20
|
-
Rake::Task['maximus:statistic:all'].invoke
|
21
|
-
end
|
22
|
-
# alias abbreviation
|
23
|
-
task :stat => :statistic
|
24
|
-
|
25
|
-
desc "Display lint data from the last commit alone"
|
26
|
-
task :compare, :commit do |t, args|
|
27
|
-
args.with_defaults(commit: 'working')
|
28
|
-
Maximus::GitControl.new({ commit: args[:commit] }).lints_and_stats(true)
|
29
|
-
end
|
30
|
-
|
31
|
-
end
|
32
|
-
|
33
|
-
desc "Execute all front-end, back-end and statistic tasks"
|
34
|
-
task :maximus do
|
35
|
-
Rake::Task['maximus:fe:all'].invoke
|
36
|
-
Rake::Task['maximus:be:all'].invoke
|
37
|
-
Rake::Task['maximus:statistic:all'].invoke
|
38
|
-
Rake::Task['maximus:compare'].invoke
|
39
|
-
end
|
@@ -1,26 +0,0 @@
|
|
1
|
-
desc "Run some sweet statistic scripts for the front-end"
|
2
|
-
namespace :maximus do
|
3
|
-
|
4
|
-
namespace :statistic do
|
5
|
-
|
6
|
-
desc "Run stylestats (node required)"
|
7
|
-
task :stylestats, :path do |t, args|
|
8
|
-
Maximus::Stylestats.new({ path:args[:path] }).result
|
9
|
-
end
|
10
|
-
|
11
|
-
desc "Run phantomas (node and phantomjs required)"
|
12
|
-
task :phantomas, :path do |t, args|
|
13
|
-
Maximus::Phantomas.new({ path:args[:path] }).result
|
14
|
-
end
|
15
|
-
|
16
|
-
desc "Run Wraith (phantomjs required)"
|
17
|
-
task :wraith, :path do |t, args|
|
18
|
-
Maximus::Wraith.new({ path:args[:path] }).result
|
19
|
-
end
|
20
|
-
|
21
|
-
desc "Execute all statistics tasks"
|
22
|
-
task :all => [:stylestats, :wraith, :phantomas]
|
23
|
-
|
24
|
-
end
|
25
|
-
|
26
|
-
end
|