jruby-lint 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -3,10 +3,9 @@ source "http://rubygems.org"
3
3
  # Specify your gem's dependencies in jruby-lint.gemspec
4
4
  gemspec
5
5
 
6
- # Until a new childprocess gem incorporates my Dir.pwd fix
7
- gem 'childprocess', :git => "https://github.com/nicksieger/childprocess.git"
8
-
6
+ gem 'childprocess'
9
7
  gem 'guard'
10
8
  gem 'guard-rspec'
11
9
  gem 'growl'
12
10
  gem 'rb-fsevent'
11
+ gem 'rcov'
@@ -1,3 +1,9 @@
1
+ === 0.3.1 / 2012/01/12
2
+
3
+ - Allow versions of nokogiri >= 1.5.0.beta.4 (e.g., 1.5.0)
4
+ - Enable adding tags from the command-line (e.g., 'debug')
5
+ - Upgrade project gems: rake, rspec, childprocess
6
+
1
7
  === 0.3.0 / 2011-07-04
2
8
 
3
9
  - html reports
data/Rakefile CHANGED
@@ -13,8 +13,8 @@ require 'open-uri'
13
13
  require 'net/https'
14
14
 
15
15
  file "spec/fixtures/C-Extension-Alternatives.html" do |t|
16
- require 'jruby/lint/gems'
17
- cache = JRuby::Lint::Gems::Cache.new('spec/fixtures')
16
+ require 'jruby/lint/libraries'
17
+ cache = JRuby::Lint::Libraries::Cache.new('spec/fixtures')
18
18
  cache.fetch("C-Extension-Alternatives")
19
19
  end
20
20
 
@@ -26,7 +26,7 @@ Gem::Specification.new do |s|
26
26
 
27
27
  s.add_dependency "term-ansicolor"
28
28
  s.add_dependency "jruby-openssl"
29
- s.add_dependency "nokogiri", "= 1.5.0.beta.4"
29
+ s.add_dependency "nokogiri", ">= 1.5.0.beta.4"
30
30
  s.add_development_dependency "rake"
31
31
  s.add_development_dependency "rspec", ">= 2.5"
32
32
  s.add_development_dependency "rspec-given"
@@ -4,6 +4,10 @@ module JRuby::Lint
4
4
  include Checker
5
5
  include CheckGemNode
6
6
 
7
+ def initialize
8
+ @gemspec_block_var = nil
9
+ end
10
+
7
11
  def visitCallNode(node)
8
12
  # Gem::Specification.new do |s| =>
9
13
  #
@@ -1,6 +1,8 @@
1
1
  module JRuby
2
2
  module Lint
3
3
  class CLI
4
+ attr_reader :options
5
+
4
6
  def initialize(args)
5
7
  process_options(args)
6
8
  end
@@ -23,6 +25,11 @@ module JRuby
23
25
  @options.eval << v
24
26
  end
25
27
 
28
+ opts.on("-t", "--tag TAG", "Report findings tagged with TAG") do |v|
29
+ @options.tags ||= []
30
+ @options.tags << v
31
+ end
32
+
26
33
  opts.on('--text', 'print report as text') do
27
34
  @options.text = true
28
35
  end
@@ -26,7 +26,7 @@ module JRuby::Lint
26
26
  after_hooks << res if res.respond_to?(:call)
27
27
  end
28
28
  rescue => e
29
- ch.collector.findings << Finding.new("Exception while traversing: #{e.message}",
29
+ ch.collector.findings << Finding.new("Exception while traversing: #{e.message}\n at #{e.backtrace.first}",
30
30
  [:internal, :debug], node.position)
31
31
  end
32
32
  end
@@ -8,7 +8,7 @@ module JRuby::Lint
8
8
  attr_reader :collectors, :reporters, :findings, :files, :tags, :libraries
9
9
 
10
10
  def initialize(options = OpenStruct.new)
11
- @tags = DEFAULT_TAGS
11
+ @tags = DEFAULT_TAGS.dup
12
12
  @collectors = []
13
13
  @files = Set.new
14
14
 
@@ -17,6 +17,10 @@ module JRuby::Lint
17
17
  @files += @collectors
18
18
  end
19
19
 
20
+ if options.tags
21
+ @tags += options.tags
22
+ end
23
+
20
24
  @sources = options.files || (options.eval ? [] : Dir['./**/*'])
21
25
  load_collectors
22
26
  load_reporters(options)
@@ -1,5 +1,5 @@
1
1
  module JRuby
2
2
  module Lint
3
- VERSION = "0.3.0"
3
+ VERSION = "0.3.1"
4
4
  end
5
5
  end
@@ -1,207 +1,131 @@
1
1
 
2
-
3
2
 
4
-
5
3
 
6
4
  <!DOCTYPE html>
7
5
  <html>
8
6
  <head>
9
7
  <meta charset='utf-8'>
10
8
  <meta http-equiv="X-UA-Compatible" content="chrome=1">
11
- <script type="text/javascript">var NREUMQ=[];NREUMQ.push(["mark","firstbyte",new Date().getTime()]);</script>
12
9
  <title>C Extension Alternatives - GitHub</title>
13
10
  <link rel="search" type="application/opensearchdescription+xml" href="/opensearch.xml" title="GitHub" />
14
11
  <link rel="fluid-icon" href="https://github.com/fluidicon.png" title="GitHub" />
15
12
 
16
- <link href="https://a248.e.akamai.net/assets.github.com/b061594e73bd47cde0b406f0ccd1cee8b0aa96ec/stylesheets/bundle_github.css" media="screen" rel="stylesheet" type="text/css" />
13
+
17
14
 
18
15
 
19
- <script type="text/javascript">
20
- if (typeof console == "undefined" || typeof console.log == "undefined")
21
- console = { log: function() {} }
22
- </script>
23
- <script type="text/javascript" charset="utf-8">
24
- var GitHub = {
25
- assetHost: 'https://a248.e.akamai.net/assets.github.com'
26
- }
27
- var github_user = null
28
-
29
- </script>
30
- <script src="https://a248.e.akamai.net/assets.github.com/javascripts/jquery/jquery-1.6.1.min.js" type="text/javascript"></script>
31
- <script src="https://a248.e.akamai.net/assets.github.com/9a8d4d0be567a85129ca26f93f40eb76dcc8bfbb/javascripts/bundle_github.js" type="text/javascript"></script>
32
-
16
+ <meta content="authenticity_token" name="csrf-param" />
17
+ <meta content="8F14SYHdCaD2YBGDyw5eoTwEG/KLI7r6UW/uWiXNu+8=" name="csrf-token" />
33
18
 
19
+ <link href="https://a248.e.akamai.net/assets.github.com/stylesheets/bundles/github-9f2d0baa85681676c70f58b960aa88c4e806e346.css" media="screen" rel="stylesheet" type="text/css" />
34
20
 
35
- <script type="text/javascript" charset="utf-8">
36
- GitHub.spy({
37
- repo: "jruby/jruby"
38
- })
39
- </script>
40
21
 
22
+ <script src="https://a248.e.akamai.net/assets.github.com/javascripts/bundles/jquery-2bdf48207f435863de9c5786265d27d992c7f6c0.js" type="text/javascript"></script>
23
+ <script src="https://a248.e.akamai.net/assets.github.com/javascripts/bundles/github-826c6f1fd72f47fab15f6fc2a01e5fb90daa9d56.js" type="text/javascript"></script>
41
24
 
42
- <link href="https://github.com/jruby/jruby/commits/master.atom" rel="alternate" title="Recent Commits to jruby:master" type="application/atom+xml" />
43
- <script src="https://a248.e.akamai.net/assets.github.com/9efa4f408d844eccca76d5687e85d5b519597f1f/javascripts/bundle_wiki.js" type="text/javascript"></script>
44
-
45
- <script src="/javascripts/other/MathJax/MathJax.js" type="text/javascript">
46
- if (window.location.protocol == "https:") {
47
- MathJax.OutputJax.fontDir = "https://" + document.location.host + "/assets/MathJax/fonts"
48
- } else {
49
- MathJax.OutputJax.fontDir = "http://" + document.location.host + "/assets/MathJax/fonts"
50
- }
51
- MathJax.Hub.Config({
52
- jax: ["input/TeX", "output/HTML-CSS"]
53
- })
54
- </script>
55
-
56
- <meta name="description" content="jruby - JRuby, an implementation of Ruby on the JVM" />
57
- <script type="text/javascript">
58
- GitHub.nameWithOwner = GitHub.nameWithOwner || "jruby/jruby";
59
- GitHub.currentRef = 'master';
60
- GitHub.commitSHA = "24aad97afc34e25047c06298ea0f2559f90c14d2";
61
- GitHub.currentPath = '';
62
- GitHub.masterBranch = "master";
63
25
 
64
-
65
- </script>
66
-
26
+ <script src="https://a248.e.akamai.net/assets.github.com/javascripts/bundles/wiki-a1e5edfd890a8f8d6e382865bd946f2f26bb3063.js" type="text/javascript"></script>
67
27
 
68
- <script type="text/javascript">
69
- var _gaq = _gaq || [];
70
- _gaq.push(['_setAccount', 'UA-3769691-2']);
71
- _gaq.push(['_setDomainName', 'none']);
72
- _gaq.push(['_trackPageview']);
73
- _gaq.push(['_trackPageLoadTime']);
74
- (function() {
75
- var ga = document.createElement('script');
76
- ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
77
- ga.setAttribute('async', 'true');
78
- document.documentElement.firstChild.appendChild(ga);
79
- })();
80
- </script>
28
+ <meta name="description" content="jruby - JRuby, an implementation of Ruby on the JVM" />
29
+ <link href="https://github.com/jruby/jruby/commits/master.atom" rel="alternate" title="Recent Commits to jruby:master" type="application/atom+xml" />
81
30
 
82
-
83
31
  </head>
84
32
 
85
-
86
33
 
87
- <body class="logged_out env-production">
34
+ <body class="logged_out env-production ">
88
35
 
89
36
 
90
-
91
37
 
92
38
 
93
39
 
94
- <div class="subnavd" id="main">
95
- <div id="header" class="true">
96
-
97
- <a class="logo boring" href="https://github.com">
98
-
99
- <img alt="github" class="default" height="45" src="https://a248.e.akamai.net/assets.github.com/images/modules/header/logov5.png" />
100
- <!--[if (gt IE 8)|!(IE)]><!-->
101
- <img alt="github" class="hover" height="45" src="https://a248.e.akamai.net/assets.github.com/images/modules/header/logov5-hover.png" />
102
- <!--<![endif]-->
40
+ <div id="header" class="true clearfix">
41
+ <div class="container clearfix">
42
+ <a class="site-logo" href="https://github.com">
43
+ <!--[if IE]>
44
+ <img alt="GitHub" class="github-logo" src="https://a248.e.akamai.net/assets.github.com/images/modules/header/logov7.png?1323882799" />
45
+ <img alt="GitHub" class="github-logo-hover" src="https://a248.e.akamai.net/assets.github.com/images/modules/header/logov7-hover.png?1324325436" />
46
+ <![endif]-->
47
+ <img alt="GitHub" class="github-logo-4x" height="30" src="https://a248.e.akamai.net/assets.github.com/images/modules/header/logov7@4x.png?1323882799" />
48
+ <img alt="GitHub" class="github-logo-4x-hover" height="30" src="https://a248.e.akamai.net/assets.github.com/images/modules/header/logov7@4x-hover.png?1324325436" />
103
49
  </a>
104
-
105
-
106
- <div class="topsearch">
107
-
108
- <ul class="nav logged_out">
109
-
110
- <li class="pricing"><a href="/plans">Pricing and Signup</a></li>
111
-
112
- <li class="explore"><a href="/explore">Explore GitHub</a></li>
113
- <li class="features"><a href="/features">Features</a></li>
114
-
115
- <li class="blog"><a href="/blog">Blog</a></li>
116
-
117
- <li class="login"><a href="/login?return_to=%2Fjruby%2Fjruby%2Fwiki%2FC-Extension-Alternatives">Login</a></li>
50
+
51
+ <!--
52
+ make sure to use fully qualified URLs here since this nav
53
+ is used on error pages on other domains
54
+ -->
55
+ <ul class="top-nav logged_out">
56
+ <li class="pricing"><a href="https://github.com/plans">Signup and Pricing</a></li>
57
+ <li class="explore"><a href="https://github.com/explore">Explore GitHub</a></li>
58
+ <li class="features"><a href="https://github.com/features">Features</a></li>
59
+ <li class="blog"><a href="https://github.com/blog">Blog</a></li>
60
+ <li class="login"><a href="https://github.com/login?return_to=%2Fjruby%2Fjruby%2Fwiki%2FC-Extension-Alternatives">Login</a></li>
118
61
  </ul>
119
-
120
- </div>
121
62
 
63
+
64
+
65
+
66
+ </div>
122
67
  </div>
123
68
 
124
69
 
125
-
126
-
127
- <div class="site">
128
- <div class="pagehead repohead vis-public emptyrepohead shortdetails instapaper_ignore readability-menu">
129
70
 
130
-
71
+ <div class="site">
72
+ <div class="container">
73
+ <div class="pagehead repohead instapaper_ignore readability-menu">
131
74
 
132
- <div class="title-actions-bar">
133
- <h1>
134
- <a href="/jruby">jruby</a> / <strong><a href="/jruby/jruby">jruby</a></strong>
135
-
75
+
76
+ <div class="title-actions-bar">
77
+ <h1>
78
+ <a href="/jruby">jruby</a> /
79
+ <strong><a href="/jruby/jruby" class="js-current-repository">jruby</a></strong>
80
+ </h1>
136
81
 
137
- </h1>
138
82
 
139
-
140
- <ul class="actions">
141
-
142
83
 
143
-
144
- <li class="for-owner" style="display:none"><a href="/jruby/jruby/admin" class="minibutton btn-admin "><span><span class="icon"></span>Admin</span></a></li>
145
- <li>
146
- <a href="/jruby/jruby/toggle_watch" class="minibutton btn-watch " id="watch_button" onclick="var f = document.createElement('form'); f.style.display = 'none'; this.parentNode.appendChild(f); f.method = 'POST'; f.action = this.href;var s = document.createElement('input'); s.setAttribute('type', 'hidden'); s.setAttribute('name', 'authenticity_token'); s.setAttribute('value', 'a12af8eb75d6148a6d430d76ce52736db893dd3d'); f.appendChild(s);f.submit();return false;" style="display:none"><span><span class="icon"></span>Watch</span></a>
147
- <a href="/jruby/jruby/toggle_watch" class="minibutton btn-watch " id="unwatch_button" onclick="var f = document.createElement('form'); f.style.display = 'none'; this.parentNode.appendChild(f); f.method = 'POST'; f.action = this.href;var s = document.createElement('input'); s.setAttribute('type', 'hidden'); s.setAttribute('name', 'authenticity_token'); s.setAttribute('value', 'a12af8eb75d6148a6d430d76ce52736db893dd3d'); f.appendChild(s);f.submit();return false;" style="display:none"><span><span class="icon"></span>Unwatch</span></a>
148
- </li>
149
-
150
-
151
- <li class="for-notforked" style="display:none"><a href="/jruby/jruby/fork" class="minibutton btn-fork " id="fork_button" onclick="var f = document.createElement('form'); f.style.display = 'none'; this.parentNode.appendChild(f); f.method = 'POST'; f.action = this.href;var s = document.createElement('input'); s.setAttribute('type', 'hidden'); s.setAttribute('name', 'authenticity_token'); s.setAttribute('value', 'a12af8eb75d6148a6d430d76ce52736db893dd3d'); f.appendChild(s);f.submit();return false;"><span><span class="icon"></span>Fork</span></a></li>
152
- <li class="for-hasfork" style="display:none"><a href="#" class="minibutton btn-fork " id="your_fork_button"><span><span class="icon"></span>Your Fork</span></a></li>
153
-
154
84
 
155
-
156
-
157
-
158
-
85
+ <ul class="pagehead-actions">
86
+
87
+
88
+ <li><a href="/login?return_to=%2Fjruby%2Fjruby" class="minibutton btn-watch watch-button entice tooltipped leftwards" rel="nofollow" title="You must be logged in to use this feature"><span><span class="icon"></span>Watch</span></a></li>
89
+ <li><a href="/login?return_to=%2Fjruby%2Fjruby" class="minibutton btn-fork fork-button entice tooltipped leftwards" rel="nofollow" title="You must be logged in to use this feature"><span><span class="icon"></span>Fork</span></a></li>
90
+
91
+
159
92
  <li class="repostats">
160
93
  <ul class="repo-stats">
161
- <li class="watchers"><a href="/jruby/jruby/watchers" title="Watchers" class="tooltipped downwards">551</a></li>
162
- <li class="forks"><a href="/jruby/jruby/network" title="Forks" class="tooltipped downwards">125</a></li>
94
+ <li class="watchers ">
95
+ <a href="/jruby/jruby/watchers" title="Watchers" class="tooltipped downwards">
96
+ 764
97
+ </a>
98
+ </li>
99
+ <li class="forks">
100
+ <a href="/jruby/jruby/network" title="Forks" class="tooltipped downwards">
101
+ 163
102
+ </a>
103
+ </li>
163
104
  </ul>
164
105
  </li>
165
106
  </ul>
166
107
 
167
- </div>
108
+ </div>
109
+
110
+
168
111
 
169
-
170
112
  <ul class="tabs">
171
- <li><a href="/jruby/jruby" highlight="repo_source">Source</a></li>
172
- <li><a href="/jruby/jruby/commits/master" highlight="repo_commits">Commits</a></li>
173
- <li><a href="/jruby/jruby/network" highlight="repo_network">Network</a></li>
174
- <li><a href="/jruby/jruby/pulls" highlight="repo_pulls">Pull Requests (5)</a></li>
113
+ <li><a href="/jruby/jruby" highlight="repo_sourcerepo_downloadsrepo_commitsrepo_tagsrepo_branches">Code</a></li>
114
+ <li><a href="/jruby/jruby/network" highlight="repo_networkrepo_fork_queue">Network</a>
115
+ <li><a href="/jruby/jruby/pulls" highlight="repo_pulls">Pull Requests <span class='counter'>2</span></a></li>
175
116
 
176
-
177
117
 
178
-
118
+ <li><a href="/jruby/jruby/wiki" class="selected" highlight="repo_wiki">Wiki <span class='counter'>132</span></a></li>
179
119
 
180
- <li><a href="/jruby/jruby/wiki" class="selected" highlight="repo_wiki">Wiki (118)</a></li>
181
-
182
- <li><a href="/jruby/jruby/graphs" highlight="repo_graphs">Graphs</a></li>
120
+ <li><a href="/jruby/jruby/graphs" highlight="repo_graphsrepo_contributors">Stats &amp; Graphs</a></li>
183
121
 
184
-
185
-
186
- <li class="contextswitch nochoices">
187
- <span class="toggle leftwards" >
188
- <em>Branch:</em>
189
- <code>master</code>
190
- </span>
191
- </li>
192
122
  </ul>
193
123
 
194
- <div style="display:none" id="pl-description"><p><em class="placeholder">click here to add a description</em></p></div>
195
- <div style="display:none" id="pl-homepage"><p><em class="placeholder">click here to add a homepage</em></p></div>
196
-
197
-
198
-
199
-
200
124
 
201
125
 
202
126
 
203
127
  <div class="subnav-bar">
204
- <ul>
128
+ <ul class="subnav">
205
129
  <li><a href="/jruby/jruby/wiki">Home</a></li>
206
130
  <li><a href="/jruby/jruby/wiki/_pages">Pages</a></li>
207
131
  <li><a href="/jruby/jruby/wiki/_history">Wiki History</a></li>
@@ -210,47 +134,20 @@
210
134
  </div>
211
135
 
212
136
 
137
+
213
138
 
214
-
139
+ </div><!-- /.repohead -->
215
140
 
216
141
 
217
142
 
218
- </div><!-- /.pagehead -->
219
143
 
220
-
221
-
222
- <div id="repos">
223
-
224
-
225
-
226
- <script type="text/javascript">
227
- GitHub.downloadRepo = '/jruby/jruby/archives/master'
228
- GitHub.revType = "master"
229
-
230
- GitHub.repoName = "jruby"
231
- GitHub.controllerName = "wiki"
232
- GitHub.actionName = "show"
233
- GitHub.currentAction = "wiki#show"
234
-
235
-
236
- GitHub.loggedIn = false
237
-
238
-
239
-
240
- </script>
241
-
242
-
243
-
244
-
245
- </div>
246
- <div class="flash-messages"></div>
247
144
 
248
145
 
249
146
  <div id="wiki-wrapper" class="page">
250
147
  <div id="head">
251
148
  <h1 class="instapaper_title">C Extension Alternatives</h1>
252
- <ul class="actions readability-extra">
253
- <li class="gollum-minibutton"><a href="/jruby/jruby/wiki/C-Extension-Alternatives/_history"
149
+ <ul class="wiki-actions readability-extra">
150
+ <li class="gollum-minibutton"><a href="/jruby/jruby/wiki/C-Extension-Alternatives/_history"
254
151
  class="action-page-history">
255
152
  Page History
256
153
  </a></li>
@@ -259,7 +156,7 @@
259
156
  <div id="wiki-content">
260
157
  <div class="wrap">
261
158
  <div id="wiki-body" class="gollum-markdown-content instapaper_body">
262
- <div id="template">
159
+ <div class="markdown-body">
263
160
  <p>JRuby versions prior to 1.6 did not support Ruby C extensions, and even in 1.6 the support is still "in development" and considered experimental. This page lists common C extensions and non-C alternatives you can use to replace them.</p>
264
161
 
265
162
  <ul>
@@ -275,67 +172,101 @@
275
172
  <li><p><strong><a href="https://github.com/brianmario/yajl-ruby">yajl-ruby</a></strong> - Try <code>json</code> or <code>json_pure</code> instead. Unfortunately there is no known equivalent JSON stream parser.</p></li>
276
173
  <li><p><strong><a href="https://github.com/mongodb/mongo-ruby-driver">bson_ext</a></strong> - <code>bson_ext</code> isn't used with JRuby. Instead, some native Java extensions are bundled with the <code>bson</code> gem.</p></li>
277
174
  <li><p><strong><a href="http://www.ruby-doc.org/stdlib/libdoc/win32ole/rdoc/index.html">win32ole</a></strong> - Use the <code>jruby-win32ole</code> gem (preinstalled in JRuby's Windows installer).</p></li>
175
+ <li><p><strong><a href="http://curb.rubyforge.org/">curb</a></strong> - <a href="https://github.com/rcyrus/Rurl">Rurl</a> is an example how to implement <em>some</em> of curb's functionality using <a href="http://hc.apache.org/httpcomponents-client-ga/">Apache HttpClient</a></p></li>
176
+ <li><p><strong><a href="https://github.com/cowboyd/therubyracer">therubyracer</a></strong> - Try using <a href="https://github.com/cowboyd/therubyrhino">therubyrhino</a> instead.</p></li>
278
177
  </ul><p>Please add to this list with your findings.</p>
279
178
 
280
179
  <p><em>Note that the <a href="https://github.com/jruby/jruby-lint">JRuby-Lint</a> gem parses the contents of the list above to use for its Ruby gem checker. In order for JRuby-Lint to use the information, please adhere to the <code>gem_name - instructions</code> format.</em></p>
281
180
  </div>
282
181
  </div>
283
-
284
-
285
182
  </div>
286
183
 
287
184
  </div>
288
185
  <div id="gollum-footer">
289
186
  <p id="last-edit">
290
- Last edited by headius, <time class="js-relative-date" datetime="2011-05-15T17:25:54-07:00" title="2011-05-15 17:25:54">May 15, 2011</time>
291
- </p>
292
- <p id="delete-link">
293
- <a href="/jruby/jruby/wiki/C-Extension-Alternatives" onclick="if (confirm('Are you sure you want to delete this page?')) { var f = document.createElement('form'); f.style.display = 'none'; this.parentNode.appendChild(f); f.method = 'POST'; f.action = this.href;var m = document.createElement('input'); m.setAttribute('type', 'hidden'); m.setAttribute('name', '_method'); m.setAttribute('value', 'delete'); f.appendChild(m);var s = document.createElement('input'); s.setAttribute('type', 'hidden'); s.setAttribute('name', 'authenticity_token'); s.setAttribute('value', 'a12af8eb75d6148a6d430d76ce52736db893dd3d'); f.appendChild(s);f.submit(); };return false;"><span>Delete this Page</span></a>
187
+ Last edited by declan, <time class="js-relative-date" datetime="2011-12-25T13:19:15-08:00" title="2011-12-25 13:19:15">December 25, 2011</time>
294
188
  </p>
295
189
  </div>
296
190
  </div>
297
191
 
298
192
 
299
- </div>
300
-
301
-
193
+ </div>
302
194
  </div>
303
195
 
304
- <div id="footer" class="clearfix">
305
- <div class="site">
306
-
307
- <div class="sponsor">
308
- <a href="http://www.rackspace.com" class="logo">
309
- <img alt="Dedicated Server" height="36" src="https://a248.e.akamai.net/assets.github.com/images/modules/footer/rackspace_logo.png?v2" width="38" />
310
- </a>
311
- Powered by the <a href="http://www.rackspace.com ">Dedicated
312
- Servers</a> and<br/> <a href="http://www.rackspacecloud.com">Cloud
313
- Computing</a> of Rackspace Hosting<span>&reg;</span>
314
- </div>
315
-
316
196
 
317
- <ul class="links">
318
-
319
- <li class="blog"><a href="https://github.com/blog">Blog</a></li>
320
- <li><a href="https://github.com/about">About</a></li>
321
- <li><a href="https://github.com/contact">Contact &amp; Support</a></li>
322
- <li><a href="https://github.com/training">Training</a></li>
323
- <li><a href="http://jobs.github.com">Job Board</a></li>
324
- <li><a href="http://shop.github.com">Shop</a></li>
325
- <li><a href="http://developer.github.com">API</a></li>
326
- <li><a href="http://status.github.com">Status</a></li>
327
-
328
- </ul>
329
- <ul class="sosueme">
330
- <li class="main">&copy; 2011 <span id="_rrt" title="0.11973s from fe1.rs.github.com">GitHub</span> Inc. All rights reserved.</li>
331
- <li><a href="/site/terms">Terms of Service</a></li>
332
- <li><a href="/site/privacy">Privacy</a></li>
197
+ <!-- footer -->
198
+ <div id="footer" >
199
+
200
+ <div class="upper_footer">
201
+ <div class="container clearfix">
202
+
203
+ <!--[if IE]><h4 id="blacktocat_ie">GitHub Links</h4><![endif]-->
204
+ <![if !IE]><h4 id="blacktocat">GitHub Links</h4><![endif]>
205
+
206
+ <ul class="footer_nav">
207
+ <h4>GitHub</h4>
208
+ <li><a href="https://github.com/about">About</a></li>
209
+ <li><a href="https://github.com/blog">Blog</a></li>
210
+ <li><a href="https://github.com/features">Features</a></li>
211
+ <li><a href="https://github.com/contact">Contact &amp; Support</a></li>
212
+ <li><a href="https://github.com/training">Training</a></li>
213
+ <li><a href="http://enterprise.github.com/">GitHub Enterprise</a></li>
214
+ <li><a href="http://status.github.com/">Site Status</a></li>
215
+ </ul>
216
+
217
+ <ul class="footer_nav">
218
+ <h4>Tools</h4>
219
+ <li><a href="http://get.gaug.es/">Gauges: Analyze web traffic</a></li>
220
+ <li><a href="http://speakerdeck.com">Speaker Deck: Presentations</a></li>
221
+ <li><a href="https://gist.github.com">Gist: Code snippets</a></li>
222
+ <li><a href="http://mac.github.com/">GitHub for Mac</a></li>
223
+ <li><a href="http://mobile.github.com/">Issues for iPhone</a></li>
224
+ <li><a href="http://jobs.github.com/">Job Board</a></li>
225
+ </ul>
226
+
227
+ <ul class="footer_nav">
228
+ <h4>Extras</h4>
229
+ <li><a href="http://shop.github.com/">GitHub Shop</a></li>
230
+ <li><a href="http://octodex.github.com/">The Octodex</a></li>
231
+ </ul>
232
+
233
+ <ul class="footer_nav">
234
+ <h4>Documentation</h4>
235
+ <li><a href="http://help.github.com/">GitHub Help</a></li>
236
+ <li><a href="http://developer.github.com/">Developer API</a></li>
237
+ <li><a href="http://github.github.com/github-flavored-markdown/">GitHub Flavored Markdown</a></li>
238
+ <li><a href="http://pages.github.com/">GitHub Pages</a></li>
239
+ </ul>
240
+
241
+ </div><!-- /.site -->
242
+ </div><!-- /.upper_footer -->
243
+
244
+ <div class="lower_footer">
245
+ <div class="container clearfix">
246
+ <!--[if IE]><div id="legal_ie"><![endif]-->
247
+ <![if !IE]><div id="legal"><![endif]>
248
+ <ul>
249
+ <li><a href="https://github.com/site/terms">Terms of Service</a></li>
250
+ <li><a href="https://github.com/site/privacy">Privacy</a></li>
333
251
  <li><a href="https://github.com/security">Security</a></li>
334
- </ul>
252
+ </ul>
253
+
254
+ <p>&copy; 2012 <span id="_rrt" title="0.07729s from fe3.rs.github.com">GitHub</span> Inc. All rights reserved.</p>
255
+ </div><!-- /#legal or /#legal_ie-->
256
+
257
+ <div class="sponsor">
258
+ <a href="http://www.rackspace.com" class="logo">
259
+ <img alt="Dedicated Server" height="36" src="https://a248.e.akamai.net/assets.github.com/images/modules/footer/rackspace_logo.png?v2" width="38" />
260
+ </a>
261
+ Powered by the <a href="http://www.rackspace.com ">Dedicated
262
+ Servers</a> and<br/> <a href="http://www.rackspacecloud.com">Cloud
263
+ Computing</a> of Rackspace Hosting<span>&reg;</span>
335
264
  </div>
336
- </div><!-- /#footer -->
265
+ </div><!-- /.site -->
266
+ </div><!-- /.lower_footer -->
267
+
268
+ </div><!-- /#footer -->
337
269
 
338
- <script>window._auth_token = "a12af8eb75d6148a6d430d76ce52736db893dd3d"</script>
339
270
 
340
271
 
341
272
  <div id="keyboard_shortcuts_pane" class="instapaper_ignore readability-extra" style="display:none">
@@ -358,19 +289,11 @@
358
289
  <h3>Commit list</h3>
359
290
  <dl class="keyboard-mappings">
360
291
  <dt>j</dt>
361
- <dd>Move selected down</dd>
292
+ <dd>Move selection down</dd>
362
293
  </dl>
363
294
  <dl class="keyboard-mappings">
364
295
  <dt>k</dt>
365
- <dd>Move selected up</dd>
366
- </dl>
367
- <dl class="keyboard-mappings">
368
- <dt>t</dt>
369
- <dd>Open tree</dd>
370
- </dl>
371
- <dl class="keyboard-mappings">
372
- <dt>p</dt>
373
- <dd>Open parent</dd>
296
+ <dd>Move selection up</dd>
374
297
  </dl>
375
298
  <dl class="keyboard-mappings">
376
299
  <dt>c <em>or</em> o <em>or</em> enter</dt>
@@ -386,11 +309,11 @@
386
309
  <h3>Pull request list</h3>
387
310
  <dl class="keyboard-mappings">
388
311
  <dt>j</dt>
389
- <dd>Move selected down</dd>
312
+ <dd>Move selection down</dd>
390
313
  </dl>
391
314
  <dl class="keyboard-mappings">
392
315
  <dt>k</dt>
393
- <dd>Move selected up</dd>
316
+ <dd>Move selection up</dd>
394
317
  </dl>
395
318
  <dl class="keyboard-mappings">
396
319
  <dt>o <em>or</em> enter</dt>
@@ -409,15 +332,15 @@
409
332
  <div class="column first">
410
333
  <dl class="keyboard-mappings">
411
334
  <dt>j</dt>
412
- <dd>Move selected down</dd>
335
+ <dd>Move selection down</dd>
413
336
  </dl>
414
337
  <dl class="keyboard-mappings">
415
338
  <dt>k</dt>
416
- <dd>Move selected up</dd>
339
+ <dd>Move selection up</dd>
417
340
  </dl>
418
341
  <dl class="keyboard-mappings">
419
342
  <dt>x</dt>
420
- <dd>Toggle select target</dd>
343
+ <dd>Toggle selection</dd>
421
344
  </dl>
422
345
  <dl class="keyboard-mappings">
423
346
  <dt>o <em>or</em> enter</dt>
@@ -427,19 +350,19 @@
427
350
  <div class="column middle">
428
351
  <dl class="keyboard-mappings">
429
352
  <dt>I</dt>
430
- <dd>Mark selected as read</dd>
353
+ <dd>Mark selection as read</dd>
431
354
  </dl>
432
355
  <dl class="keyboard-mappings">
433
356
  <dt>U</dt>
434
- <dd>Mark selected as unread</dd>
357
+ <dd>Mark selection as unread</dd>
435
358
  </dl>
436
359
  <dl class="keyboard-mappings">
437
360
  <dt>e</dt>
438
- <dd>Close selected</dd>
361
+ <dd>Close selection</dd>
439
362
  </dl>
440
363
  <dl class="keyboard-mappings">
441
364
  <dt>y</dt>
442
- <dd>Remove selected from view</dd>
365
+ <dd>Remove selection from view</dd>
443
366
  </dl>
444
367
  </div><!-- /.column.middle -->
445
368
  <div class="column last">
@@ -467,6 +390,29 @@
467
390
  </div>
468
391
  </div>
469
392
 
393
+ <div style='display:none'>
394
+ <div class="rule"></div>
395
+
396
+ <h3>Issues Dashboard</h3>
397
+
398
+ <div class="columns threecols">
399
+ <div class="column first">
400
+ <dl class="keyboard-mappings">
401
+ <dt>j</dt>
402
+ <dd>Move selection down</dd>
403
+ </dl>
404
+ <dl class="keyboard-mappings">
405
+ <dt>k</dt>
406
+ <dd>Move selection up</dd>
407
+ </dl>
408
+ <dl class="keyboard-mappings">
409
+ <dt>o <em>or</em> enter</dt>
410
+ <dd>Open issue</dd>
411
+ </dl>
412
+ </div><!-- /.column.first -->
413
+ </div>
414
+ </div>
415
+
470
416
  <div style='display:none'>
471
417
  <div class="rule"></div>
472
418
 
@@ -528,6 +474,10 @@
528
474
  <dt>l</dt>
529
475
  <dd>Jump to line</dd>
530
476
  </dl>
477
+ <dl class="keyboard-mappings">
478
+ <dt>w</dt>
479
+ <dd>Switch branch/tag</dd>
480
+ </dl>
531
481
  <dl class="keyboard-mappings">
532
482
  <dt>y</dt>
533
483
  <dd>Expand URL to its canonical form</dd>
@@ -590,6 +540,7 @@ http://github.com - automatic!
590
540
  <p>Blockquotes</p>
591
541
  <pre>
592
542
  As Kanye West said:
543
+
593
544
  > We're living the future so
594
545
  > the present is our past.
595
546
  </pre>
@@ -629,24 +580,17 @@ I think you should use an
629
580
 
630
581
  </div>
631
582
  </div>
632
-
633
583
 
634
- <!--[if IE 8]>
635
- <script type="text/javascript" charset="utf-8">
636
- $(document.body).addClass("ie8")
637
- </script>
638
- <![endif]-->
639
584
 
640
- <!--[if IE 7]>
641
- <script type="text/javascript" charset="utf-8">
642
- $(document.body).addClass("ie7")
643
- </script>
644
- <![endif]-->
585
+ <div class="context-overlay"></div>
586
+
587
+ <div class="ajax-error-message">
588
+ <p><span class="icon"></span> Something went wrong with that request. Please try again. <a href="javascript:;" class="ajax-error-dismiss">Dismiss</a></p>
589
+ </div>
645
590
 
646
591
 
647
592
 
648
593
 
649
- <script type="text/javascript">(function(){var d=document;var e=d.createElement("script");e.async=true;e.src="https://d1ros97qkrwjf5.cloudfront.net/14/eum/rum.js ";e.type="text/javascript";var s=d.getElementsByTagName("script")[0];s.parentNode.insertBefore(e,s);})();NREUMQ.push(["nrf2","beacon-1.newrelic.com","2f94e4d8c2",64799,"dw1bEBZcX1RWRhoRD18LGhcMXEQ=",0.0,118,new Date().getTime()])</script>
650
594
  </body>
651
595
  </html>
652
596
 
@@ -2,6 +2,13 @@ require File.expand_path('../../../spec_helper', __FILE__)
2
2
  require 'jruby/lint/cli'
3
3
 
4
4
  describe JRuby::Lint::CLI do
5
+ context "with the tag option" do
6
+ Given(:cli) { JRuby::Lint::CLI.new(args) }
7
+ Given(:args) { ["--tag", "debug"]}
8
+ When { cli }
9
+ Then { cli.options.tags.should include("debug") }
10
+ end
11
+
5
12
  context "when launched" do
6
13
  Given(:command) { "ruby -I#{project_dir}/lib -S #{project_dir}/bin/jrlint #{args}" }
7
14
 
@@ -80,47 +80,53 @@ describe JRuby::Lint::Project do
80
80
  Then { project.run }
81
81
  end
82
82
 
83
- context 'loading reporters' do
84
- context 'with html option' do
85
- Given(:options) { OpenStruct.new(:html => 'report.html') }
86
- Given(:project) { in_current_dir { JRuby::Lint::Project.new(options) } }
87
- Then { project.reporters.should have(1).reporter }
88
- Then { project.reporters.first.should be_an_instance_of(JRuby::Lint::Reporters::Html) }
83
+ context 'initializing' do
84
+ Given(:options) { OpenStruct.new }
85
+ Given(:project) { in_current_dir { JRuby::Lint::Project.new(options) } }
86
+ When { STDOUT.stub!(:tty?).and_return(false) }
87
+
88
+ context 'tags' do
89
+ Given(:options) { OpenStruct.new(:tags => ["debug"]) }
90
+ Then { project.tags.should include("debug") }
91
+ Then { project.tags.should include(*JRuby::Lint::Project::DEFAULT_TAGS) }
89
92
  end
90
93
 
91
- context 'with ansi option' do
92
- Given(:options) { OpenStruct.new(:ansi => true) }
93
- Given(:project) { in_current_dir { JRuby::Lint::Project.new(options) } }
94
- Then { project.reporters.should have(1).reporter }
95
- Then { project.reporters.first.should be_an_instance_of(JRuby::Lint::Reporters::ANSIColor) }
96
- end
94
+ context 'reporters' do
95
+ context 'with html option' do
96
+ Given(:options) { OpenStruct.new(:html => 'report.html') }
97
+ Then { project.reporters.should have(1).reporter }
98
+ Then { project.reporters.first.should be_an_instance_of(JRuby::Lint::Reporters::Html) }
99
+ end
97
100
 
98
- context 'with text option' do
99
- Given(:options) { OpenStruct.new(:text => true) }
100
- Given(:project) { in_current_dir { JRuby::Lint::Project.new(options) } }
101
- Then { project.reporters.should have(1).reporter }
102
- Then { project.reporters.first.should be_an_instance_of(JRuby::Lint::Reporters::Text) }
103
- end
101
+ context 'with ansi option' do
102
+ Given(:options) { OpenStruct.new(:ansi => true) }
103
+ Then { project.reporters.should have(1).reporter }
104
+ Then { project.reporters.first.should be_an_instance_of(JRuby::Lint::Reporters::ANSIColor) }
105
+ end
104
106
 
105
- context 'with tty' do
106
- Given { STDOUT.stub(:tty?).and_return(true) }
107
- Given(:project) { in_current_dir { JRuby::Lint::Project.new } }
108
- Then { project.reporters.should have(1).reporter }
109
- Then { project.reporters.first.should be_an_instance_of(JRuby::Lint::Reporters::ANSIColor) }
110
- end
107
+ context 'with text option' do
108
+ Given(:options) { OpenStruct.new(:text => true) }
109
+ Then { project.reporters.should have(1).reporter }
110
+ Then { project.reporters.first.should be_an_instance_of(JRuby::Lint::Reporters::Text) }
111
+ end
111
112
 
112
- context 'without any option' do
113
- Given(:project) { in_current_dir { JRuby::Lint::Project.new } }
114
- Then { project.reporters.should have(1).reporter }
115
- Then { project.reporters.first.should be_an_instance_of(JRuby::Lint::Reporters::Text) }
116
- end
113
+ context 'with tty' do
114
+ Given { STDOUT.stub(:tty?).and_return(true) }
115
+ Then { project.reporters.should have(1).reporter }
116
+ Then { project.reporters.first.should be_an_instance_of(JRuby::Lint::Reporters::ANSIColor) }
117
+ end
117
118
 
118
- context 'with several options' do
119
- Given(:options) { OpenStruct.new(:ansi => true, :html => 'report.html') }
120
- Given(:project) { in_current_dir { JRuby::Lint::Project.new(options) } }
121
- Then { project.reporters.should have(2).reporter }
122
- Then { project.reporters.map(&:class).should include(JRuby::Lint::Reporters::ANSIColor) }
123
- Then { project.reporters.map(&:class).should include(JRuby::Lint::Reporters::Html) }
119
+ context 'without any option' do
120
+ Then { project.reporters.should have(1).reporter }
121
+ Then { project.reporters.first.should be_an_instance_of(JRuby::Lint::Reporters::Text) }
122
+ end
123
+
124
+ context 'with several options' do
125
+ Given(:options) { OpenStruct.new(:ansi => true, :html => 'report.html') }
126
+ Then { project.reporters.should have(2).reporter }
127
+ Then { project.reporters.map(&:class).should include(JRuby::Lint::Reporters::ANSIColor) }
128
+ Then { project.reporters.map(&:class).should include(JRuby::Lint::Reporters::Html) }
129
+ end
124
130
  end
125
131
  end
126
132
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: jruby-lint
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.3.0
5
+ version: 0.3.1
6
6
  platform: ruby
7
7
  authors:
8
8
  - Nick Sieger
@@ -10,8 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-07-05 00:00:00 +02:00
14
- default_executable:
13
+ date: 2012-01-13 00:00:00 Z
15
14
  dependencies:
16
15
  - !ruby/object:Gem::Dependency
17
16
  name: term-ansicolor
@@ -40,7 +39,7 @@ dependencies:
40
39
  version_requirements: &id003 !ruby/object:Gem::Requirement
41
40
  none: false
42
41
  requirements:
43
- - - "="
42
+ - - ">="
44
43
  - !ruby/object:Gem::Version
45
44
  version: 1.5.0.beta.4
46
45
  requirement: *id003
@@ -151,7 +150,6 @@ files:
151
150
  - spec/jruby/lint/reporters_spec.rb
152
151
  - spec/jruby/lint/version_spec.rb
153
152
  - spec/spec_helper.rb
154
- has_rdoc: true
155
153
  homepage: https://github.com/jruby/jruby-lint
156
154
  licenses: []
157
155
 
@@ -181,7 +179,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
181
179
  requirements: []
182
180
 
183
181
  rubyforge_project: jruby-lint
184
- rubygems_version: 1.5.1
182
+ rubygems_version: 1.8.9
185
183
  signing_key:
186
184
  specification_version: 3
187
185
  summary: See how ready your Ruby code is to run on JRuby.