validate-website 0.6.1 → 0.6.5

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/README.rdoc CHANGED
@@ -17,11 +17,13 @@
17
17
 
18
18
  == DESCRIPTION
19
19
 
20
- validate-website is a web crawler for checking the markup validity and not
21
- found urls (more info doc/validate-website.txt).
20
+ validate-website is a web crawler for checking the markup validity with XML
21
+ Schema / DTD and not found urls (more info doc/validate-website.txt).
22
22
 
23
- validate-website-static check the markup validity of your local documents
24
- (more info doc/validate-website-static.txt).
23
+ validate-website-static check the markup validity of your local documents with
24
+ XML Schema / DTD (more info doc/validate-website-static.txt).
25
+
26
+ HTML5 support with Validator.nu Web Service.
25
27
 
26
28
  == VALIDATE WEBSITE OPTIONS
27
29
 
@@ -60,14 +62,22 @@ validate-website-static check the markup validity of your local documents
60
62
 
61
63
  == REQUIREMENTS
62
64
 
63
- * anemone, '>= 0.5.0'
64
- * rainbow, '>= 1.1'
65
+ See validate-website.gemspec file.
65
66
 
66
67
  == CREDITS
67
68
 
68
69
  * Thanks tenderlove for Nokogiri, this tool is inspired from markup_validity.
69
70
  * And Chris Kite for Anemone web-spider framework.
70
71
 
72
+ == MORE INFO
73
+
74
+ The HTML5 support is done by using the Validator.nu Web Service, so the content
75
+ of your webpage is logged by a tier. It's not the case for other validation
76
+ because validate-website use the XML Schema or DTD stored on the data/ directory.
77
+
78
+ Please read http://about.validator.nu/#tos for more info on the HTML5
79
+ validation service.
80
+
71
81
  == CONTRIBUTORS
72
82
 
73
83
  * François de Metz (francois2metz)
@@ -75,4 +85,4 @@ validate-website-static check the markup validity of your local documents
75
85
  == LICENSE
76
86
  The MIT License
77
87
 
78
- Copyright (c) 2009-2010 Laurent Arnoud <laurent@spkdev.net>
88
+ Copyright (c) 2009-2011 Laurent Arnoud <laurent@spkdev.net>
data/Rakefile CHANGED
@@ -1,69 +1,13 @@
1
- require 'rake/packagetask'
2
1
  require 'rake/rdoctask'
3
- require 'rake'
4
- require 'find'
5
2
  require "rspec/core/rake_task" # RSpec 2.0
6
3
 
7
- # Globals
8
-
9
- PKG_NAME = 'validate-website'
10
- PKG_VERSION = '0.6.1'
11
-
12
- PKG_FILES = ['README.rdoc', 'Rakefile', 'LICENSE']
13
- Find.find('bin/', 'lib/', 'man/', 'spec/', 'data/') do |f|
14
- if FileTest.directory?(f) and f =~ /\.svn|\.git/
15
- Find.prune
16
- else
17
- PKG_FILES << f
18
- end
19
- end
20
-
21
- # Tasks
22
-
23
- task :default => [:clean, :repackage]
4
+ task :default => [:test]
24
5
 
25
6
  Rake::RDocTask.new do |rd|
26
7
  rd.main = "README.rdoc"
27
8
  rd.rdoc_files.include("README.rdoc", "lib/**/*.rb")
28
9
  end
29
10
 
30
- Rake::PackageTask.new(PKG_NAME, PKG_VERSION) do |p|
31
- p.need_tar = true
32
- p.package_files = PKG_FILES
33
- end
34
-
35
- # "Gem" part of the Rakefile
36
- require 'rake/gempackagetask'
37
-
38
- spec = Gem::Specification.new do |s|
39
- s.author = 'Laurent Arnoud'
40
- s.email = 'laurent@spkdev.net'
41
- s.homepage = 'http://github.com/spk/validate-website'
42
- s.platform = Gem::Platform::RUBY
43
- s.summary = 'Web crawler for checking the validity of your documents'
44
- s.name = PKG_NAME
45
- s.version = PKG_VERSION
46
- s.license = 'MIT'
47
- s.requirements << 'anemone' << 'rainbow'
48
- s.add_dependency('anemone', '>= 0.5.0')
49
- s.add_dependency('rainbow', '>= 1.1')
50
- s.add_development_dependency('rspec', '>= 2.0.0')
51
- s.add_development_dependency('fakeweb', '>= 1.3.0')
52
- s.require_path = 'lib'
53
- s.bindir = 'bin'
54
- s.executables << 'validate-website'
55
- s.executables << 'validate-website-static'
56
- s.files = PKG_FILES
57
- s.description = 'validate-website is a web crawler for checking the markup' +
58
- 'validity and not found urls.'
59
- s.test_files = Dir.glob('spec/*_spec.rb')
60
- end
61
-
62
- Rake::GemPackageTask.new(spec) do |pkg|
63
- pkg.need_zip = true
64
- pkg.need_tar = true
65
- end
66
-
67
11
  desc 'Update manpage from asciidoc file'
68
12
  task :manpage do
69
13
  system('find doc/ -type f -exec a2x -f manpage -D man/man1 {} \;')
@@ -3,6 +3,7 @@ require 'optparse'
3
3
 
4
4
  module ValidateWebsite
5
5
  class Parser
6
+ # TODO: no color
6
7
  DEFAULT_OPTS_CRAWL = {
7
8
  :site => 'http://localhost:3000/',
8
9
  :markup_validation => true,
@@ -28,6 +28,7 @@ module ValidateWebsite
28
28
  body = open(f).read
29
29
  doc = Nokogiri::HTML(body)
30
30
 
31
+ # TODO: check css url for static files
31
32
  if opts[:not_found]
32
33
  doc.search("//a[@href]").each do |a|
33
34
  u = a['href']
@@ -12,7 +12,6 @@ module ValidateWebsite
12
12
  @dtd = @original_doc.internal_subset
13
13
  init_namespace(@dtd)
14
14
  @errors = []
15
- @errors << 'Unknown document' if @namespace.nil?
16
15
 
17
16
  if @errors.empty?
18
17
  if @dtd_uri && @body.match(@dtd_uri.to_s)
@@ -28,7 +27,7 @@ module ValidateWebsite
28
27
 
29
28
  # http://www.w3.org/TR/xhtml1-schema/
30
29
  @xsd = Dir.chdir(XHTML_PATH) do
31
- if File.exists?(@namespace + '.xsd')
30
+ if @namespace && File.exists?(@namespace + '.xsd')
32
31
  Nokogiri::XML::Schema(File.read(@namespace + '.xsd'))
33
32
  end
34
33
  end
@@ -36,6 +35,20 @@ module ValidateWebsite
36
35
  if @xsd
37
36
  # have the xsd so use it
38
37
  @errors = @xsd.validate(@doc)
38
+ elsif document =~ /^\<!DOCTYPE html\>/i
39
+ # TODO: use a local Java, Python parser... write a Ruby HTML5 parser ?
40
+ require 'multipart_body'
41
+ url = URI.parse('http://validator.nu/')
42
+ multipart = MultipartBody.new(:content => document)
43
+ http = Net::HTTP.new(url.host)
44
+ headers = {
45
+ 'Content-Type' => "multipart/form-data; boundary=#{multipart.boundary}",
46
+ 'Content-Length' => multipart.to_s.bytesize.to_s,
47
+ }
48
+ res = http.start {|con| con.post(url.path, multipart.to_s, headers) }
49
+ if (el = Nokogiri::XML.parse(res.body).at_css('body p.failure'))
50
+ @errors << "HTML5 validator.nu #{el.content}"
51
+ end
39
52
  else
40
53
  # dont have xsd fall back to dtd
41
54
  @doc = Dir.chdir(XHTML_PATH) do
@@ -2,12 +2,12 @@
2
2
  .\" Title: validate-website-static
3
3
  .\" Author: [see the "AUTHOR" section]
4
4
  .\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
5
- .\" Date: 04/11/2011
5
+ .\" Date: 06/05/2011
6
6
  .\" Manual: \ \&
7
7
  .\" Source: \ \&
8
8
  .\" Language: English
9
9
  .\"
10
- .TH "VALIDATE\-WEBSITE\-S" "1" "04/11/2011" "\ \&" "\ \&"
10
+ .TH "VALIDATE\-WEBSITE\-S" "1" "06/05/2011" "\ \&" "\ \&"
11
11
  .\" -----------------------------------------------------------------
12
12
  .\" * Define some portability stuff
13
13
  .\" -----------------------------------------------------------------
@@ -34,7 +34,7 @@ validate-website-static \- check the validity of your documents
34
34
  \fBvalidate\-website\-static\fR [\fIOPTIONS\fR]
35
35
  .SH "DESCRIPTION"
36
36
  .sp
37
- validate\-website\-static check the markup validity of your local documents\&.
37
+ validate\-website\-static check the markup validity of your local documents with XML Schema / DTD\&. HTML5 support with Validator\&.nu Web Service\&.
38
38
  .SH "OPTIONS"
39
39
  .PP
40
40
  \fB\-p\fR, \fB\-\-pattern\fR \fIPATTERN\fR
@@ -82,6 +82,16 @@ Markup is valid\&.
82
82
  .RS 4
83
83
  Not valid markup found\&.
84
84
  .RE
85
+ .PP
86
+ 65
87
+ .RS 4
88
+ There are pages not found\&.
89
+ .RE
90
+ .PP
91
+ 66
92
+ .RS 4
93
+ There are not valid markup and pages not found\&.
94
+ .RE
85
95
  .SH "AUTHOR"
86
96
  .sp
87
97
  Laurent Arnoud <laurent@spkdev\&.net>
@@ -2,12 +2,12 @@
2
2
  .\" Title: validate-website
3
3
  .\" Author: [see the "AUTHOR" section]
4
4
  .\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
5
- .\" Date: 04/11/2011
5
+ .\" Date: 06/05/2011
6
6
  .\" Manual: \ \&
7
7
  .\" Source: \ \&
8
8
  .\" Language: English
9
9
  .\"
10
- .TH "VALIDATE\-WEBSITE" "1" "04/11/2011" "\ \&" "\ \&"
10
+ .TH "VALIDATE\-WEBSITE" "1" "06/05/2011" "\ \&" "\ \&"
11
11
  .\" -----------------------------------------------------------------
12
12
  .\" * Define some portability stuff
13
13
  .\" -----------------------------------------------------------------
@@ -34,7 +34,7 @@ validate-website \- Web crawler for checking the validity of your documents
34
34
  \fBvalidate\-website\fR [\fIOPTIONS\fR]
35
35
  .SH "DESCRIPTION"
36
36
  .sp
37
- validate\-website is a web crawler for checking the markup validity and not found urls\&.
37
+ validate\-website is a web crawler for checking the markup validity with XML Schema / DTD and not found urls\&. HTML5 support with Validator\&.nu Web Service\&.
38
38
  .SH "OPTIONS"
39
39
  .PP
40
40
  \fB\-s\fR, \fB\-\-site\fR \fISITE\fR
@@ -0,0 +1,2 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en"><head><link href="http://about.validator.nu/icon.png" rel="icon"><link href="http://about.validator.nu/style.css" rel="stylesheet"><title>Validation results</title></head><body><h1>Validation results</h1><form method="get"><fieldset><legend>Validator Input</legend><table><tbody><tr title="The document to validate."><th><label for="doc">Document</label></th><td><input type="url" name="doc" id="doc" pattern="(?:(?:https?://.+)|(?:data:.+))?" title="Absolute IRI (http, https or data only) of the document to be checked." class="textarea"></td></tr><tr title="Override for transfer protocol character encoding declaration."><th><label for="charset">Encoding</label></th><td><select id="charset" name="charset"><option value="">As set by the server/page</option><option value="UTF-8">UTF-8 (Global)</option><option value="UTF-16">UTF-16 (Global)</option><option value="Windows-1250">Windows-1250 (Central European)</option><option value="Windows-1251">Windows-1251 (Cyrillic)</option><option value="Windows-1252">Windows-1252 (Western)</option><option value="Windows-1253">Windows-1253 (Greek)</option><option value="Windows-1254">Windows-1254 (Turkish)</option><option value="Windows-1255">Windows-1255 (Hebrew)</option><option value="Windows-1256">Windows-1256 (Arabic)</option><option value="Windows-1257">Windows-1257 (Baltic)</option><option value="Windows-1258">Windows-1258 (Vietnamese)</option><option value="ISO-8859-1">ISO-8859-1 (Western)</option><option value="ISO-8859-2">ISO-8859-2 (Central European)</option><option value="ISO-8859-3">ISO-8859-3 (South European)</option><option value="ISO-8859-4">ISO-8859-4 (Baltic)</option><option value="ISO-8859-5">ISO-8859-5 (Cyrillic)</option><option value="ISO-8859-6">ISO-8859-6 (Arabic)</option><option value="ISO-8859-7">ISO-8859-7 (Greek)</option><option value="ISO-8859-8">ISO-8859-8 (Hebrew)</option><option value="ISO-8859-9">ISO-8859-9 (Turkish)</option><option value="ISO-8859-13">ISO-8859-13 (Baltic)</option><option value="ISO-8859-15">ISO-8859-15 (Western)</option><option value="KOI8-R">KOI8-R (Russian)</option><option value="TIS-620">TIS-620 (Thai)</option><option value="GBK">GBK (Chinese, simplified)</option><option value="GB18030">GB18030 (Chinese, simplified)</option><option value="Big5">Big5 (Chinese, traditional)</option><option value="Big5-HKSCS">Big5-HKSCS (Chinese, traditional)</option><option value="Shift_JIS">Shift_JIS (Japanese)</option><option value="ISO-2022-JP">ISO-2022-JP (Japanese)</option><option value="EUC-JP">EUC-JP (Japanese)</option><option value="ISO-2022-KR">ISO-2022-KR (Korean)</option><option value="EUC-KR">EUC-KR (Korean)</option></select></td></tr><tr title="Space-separated list of schema IRIs. (Leave blank to let the service guess.)"><th><label for="schema">Schemas</label></th><td><input name="schema" id="schema" pattern="(?:(?:(?:https?://\S+)|(?:data:\S+))(?:\s+(?:(?:https?://\S+)|(?:data:\S+)))*)?" title="Space-separated list of schema IRIs. (Leave blank to let the service guess.)" value=""></td></tr><tr title="Selecting a preset overrides the schema field above."><th><label for="preset">Preset</label></th><td><select id="preset" name="preset"><option value="">None</option><option value="http://s.validator.nu/html5/html5full.rnc http://s.validator.nu/html5/assertions.sch http://c.validator.nu/all/">HTML5 (experimental)</option><option value="http://s.validator.nu/html5/html5full-aria.rnc http://s.validator.nu/html5/assertions.sch http://c.validator.nu/all/">HTML5+ARIA (experimental)</option><option value="http://s.validator.nu/html5-aria-svg-mathml.rnc http://s.validator.nu/html5/assertions.sch http://c.validator.nu/all/">HTML5+ARIA, SVG 1.1 plus MathML 2.0 (experimental)</option><option value="http://s.validator.nu/xhtml10/xhtml-strict.rnc http://s.validator.nu/xhtml10/xhtml.sch http://c.validator.nu/all-html4/">HTML 4.01 Strict + IRI / XHTML 1.0 Strict + IRI</option><option value="http://s.validator.nu/xhtml10/xhtml-transitional.rnc http://s.validator.nu/xhtml10/xhtml.sch http://c.validator.nu/all-html4/">HTML 4.01 Transitional + IRI / XHTML 1.0 Transitional + IRI</option><option value="http://s.validator.nu/xhtml10/xhtml-frameset.rnc http://s.validator.nu/xhtml10/xhtml.sch http://c.validator.nu/all-html4/">HTML 4.01 Frameset + IRI / XHTML 1.0 Frameset + IRI</option><option value="http://s.validator.nu/html5/xhtml5full-xhtml.rnc http://s.validator.nu/html5/assertions.sch http://c.validator.nu/all/">XHTML5 (experimental)</option><option value="http://s.validator.nu/xhtml5-aria-rdf-svg-mathml.rnc http://s.validator.nu/html5/assertions.sch http://c.validator.nu/all/">XHTML5+ARIA, SVG 1.1 plus MathML 2.0 (experimental)</option><option value="http://s.validator.nu/xhtml1-rdf-svg-mathml.rnc http://s.validator.nu/xhtml10/xhtml.sch http://c.validator.nu/all-html4/">XHTML 1.0 Strict, SVG 1.1, MathML 2.0 + IRI</option><option value="http://s.validator.nu/xhtml1-ruby-rdf-svg-mathml.rnc http://s.validator.nu/xhtml10/xhtml.sch http://c.validator.nu/all-html4/">XHTML 1.0 Strict, Ruby, SVG 1.1, MathML 2.0 + IRI</option><option value="http://s.validator.nu/xhtml10/xhtml-basic.rnc http://s.validator.nu/xhtml10/xhtml.sch http://c.validator.nu/all-html4/">XHTML Basic + IRI</option><option value="http://s.validator.nu/svg-xhtml5-aria-rdf-mathml.rnc http://s.validator.nu/html5/assertions.sch http://c.validator.nu/all/">SVG 1.1+IRI, XHTML5+ARIA plus MathML 2.0 (experimental)</option></select></td></tr><tr title="The parser to use. Affects HTTP Accept header."><th><label for="parser">Parser</label></th><td><select id="parser" name="parser"><option value="" selected="selected">Automatically from Content-Type</option><option value="xml">XML; don’t load external entities</option><option value="xmldtd">XML; load external entities</option><option value="html">HTML; flavor from doctype</option><option value="html5">HTML5</option><option value="html4">HTML 4.01 Strict</option><option value="html4tr">HTML 4.01 Transitional</option></select></td></tr><tr title="Space-separated list of namespace URIs."><th><label for="nsfilter"><abbr title="XML namespace">XMLNS</abbr>&nbsp;Filter</label></th><td><input name="nsfilter" id="nsfilter" pattern="(?:.+:.+(?:\s+.+:.+)*)?" title="Space-separated namespace URIs for vocabularies to be filtered out."></td></tr><tr title="Disrespect MIME RFCs."><th></th><td><label for="laxtype"><input type="checkbox" name="laxtype" id="laxtype" value="yes"> Be lax about HTTP Content-Type</label></td></tr><tr title="Display a report about the textual alternatives for images."><th></th><td><label for="showimagereport"><input type="checkbox" name="showimagereport" id="showimagereport" value="yes"> Show Image Report</label></td></tr><tr title="Display the markup source of the input document."><th></th><td><label for="showsource"><input type="checkbox" name="showsource" id="showsource" value="yes"> Show Source</label></td></tr><tr><th></th><td><input value="Validate" type="submit" id="submit"></td></tr></tbody></table></fieldset></form><script src="http://about.validator.nu/script.js"></script><ol><li class="info"><p><strong>Info</strong>: <span>The Content-Type was <code>text/html</code>. Using the HTML parser.</span></p></li><li class="info"><p><strong>Info</strong>: <span>Using the schema for HTML5+ARIA, SVG 1.1 plus MathML 2.0 (experimental).</span></p></li></ol><p class="success">The document validates according to the specified schema(s) and to additional constraints checked by the validator.</p><p class="stats">Total execution time 246 milliseconds.</p><hr><p><a href="http://about.validator.nu/">About this Service</a> • <a href="http://html5.validator.nu/">Simplified Interface</a></p></body></html>
@@ -25,8 +25,12 @@ module ValidateWebsite
25
25
 
26
26
  describe('html5') do
27
27
  context('when valid') do
28
+ before do
29
+ validator_res = File.join('spec', 'data', 'validator.nu-success.html')
30
+ FakeWeb.register_uri(:any, 'http://validator.nu/',
31
+ :body => open(validator_res).read)
32
+ end
28
33
  it "html5 should be valid" do
29
- pending("need update html5lib")
30
34
  name = 'html5'
31
35
  file = File.join('spec', 'data', "#{name}.html")
32
36
  page = FakePage.new(name,
@@ -36,10 +40,7 @@ module ValidateWebsite
36
40
  validator = Validator.new(@html5_page.doc, @html5_page.body)
37
41
  validator.should be_valid
38
42
  end
39
- end
40
- context('should be valid') do
41
43
  it "with DLFP" do
42
- pending("update html5lib ruby ?")
43
44
  name = 'html5'
44
45
  file = File.join('spec', 'data', "#{name}-linuxfr.html")
45
46
  page = FakePage.new(name,
metadata CHANGED
@@ -1,242 +1,238 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: validate-website
3
- version: !ruby/object:Gem::Version
4
- hash: 5
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.6.5
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 6
9
- - 1
10
- version: 0.6.1
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Laurent Arnoud
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2011-04-11 00:00:00 +02:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2011-06-04 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: anemone
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: &22543340 !ruby/object:Gem::Requirement
25
17
  none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 11
30
- segments:
31
- - 0
32
- - 5
33
- - 0
34
- version: 0.5.0
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: 0.6.1
35
22
  type: :runtime
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
23
+ prerelease: false
24
+ version_requirements: *22543340
25
+ - !ruby/object:Gem::Dependency
38
26
  name: rainbow
27
+ requirement: &22542860 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: 1.1.1
33
+ type: :runtime
39
34
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
35
+ version_requirements: *22542860
36
+ - !ruby/object:Gem::Dependency
37
+ name: multipart_body
38
+ requirement: &22542400 !ruby/object:Gem::Requirement
41
39
  none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- hash: 13
46
- segments:
47
- - 1
48
- - 1
49
- version: "1.1"
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: 0.2.1
50
44
  type: :runtime
51
- version_requirements: *id002
52
- - !ruby/object:Gem::Dependency
53
- name: rspec
54
45
  prerelease: false
55
- requirement: &id003 !ruby/object:Gem::Requirement
46
+ version_requirements: *22542400
47
+ - !ruby/object:Gem::Dependency
48
+ name: rake
49
+ requirement: &22541940 !ruby/object:Gem::Requirement
56
50
  none: false
57
- requirements:
58
- - - ">="
59
- - !ruby/object:Gem::Version
60
- hash: 15
61
- segments:
62
- - 2
63
- - 0
64
- - 0
65
- version: 2.0.0
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: 0.8.7
66
55
  type: :development
67
- version_requirements: *id003
68
- - !ruby/object:Gem::Dependency
69
- name: fakeweb
70
56
  prerelease: false
71
- requirement: &id004 !ruby/object:Gem::Requirement
57
+ version_requirements: *22541940
58
+ - !ruby/object:Gem::Dependency
59
+ name: rspec
60
+ requirement: &22541480 !ruby/object:Gem::Requirement
72
61
  none: false
73
- requirements:
74
- - - ">="
75
- - !ruby/object:Gem::Version
76
- hash: 27
77
- segments:
78
- - 1
79
- - 3
80
- - 0
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: 2.6.0
66
+ type: :development
67
+ prerelease: false
68
+ version_requirements: *22541480
69
+ - !ruby/object:Gem::Dependency
70
+ name: fakeweb
71
+ requirement: &22541020 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
81
76
  version: 1.3.0
82
77
  type: :development
83
- version_requirements: *id004
84
- description: validate-website is a web crawler for checking the markupvalidity and not found urls.
78
+ prerelease: false
79
+ version_requirements: *22541020
80
+ description: validate-website is a web crawler for checking the markup validity with
81
+ XML Schema / DTD and not found urls.
85
82
  email: laurent@spkdev.net
86
- executables:
83
+ executables:
87
84
  - validate-website
88
85
  - validate-website-static
89
86
  extensions: []
90
-
91
87
  extra_rdoc_files: []
92
-
93
- files:
88
+ files:
94
89
  - README.rdoc
95
90
  - Rakefile
96
91
  - LICENSE
97
- - bin/validate-website-static
98
- - bin/validate-website
99
92
  - lib/validate_website/validator.rb
100
- - lib/validate_website/runner.rb
101
- - lib/validate_website/core.rb
102
93
  - lib/validate_website/colorful_messages.rb
94
+ - lib/validate_website/core.rb
103
95
  - lib/validate_website/option_parser.rb
96
+ - lib/validate_website/runner.rb
104
97
  - lib/validate_website.rb
105
- - man/man1/validate-website-static.1
106
98
  - man/man1/validate-website.1
107
- - spec/validator_spec.rb
108
- - spec/core_spec.rb
109
- - spec/spec_helper.rb
110
- - spec/data/html5-linuxfr.html
111
- - spec/data/html4-strict.html
112
- - spec/data/html5.html
113
- - spec/data/xhtml1-strict.html
114
- - spec/fakeweb_helper.rb
115
- - data/schemas/xhtml-blkphras-1.xsd
116
- - data/schemas/xhtml1-transitional.xsd
117
- - data/schemas/xhtml1-strict.xsd
118
- - data/schemas/xhtml-blkstruct-1.xsd
99
+ - man/man1/validate-website-static.1
100
+ - data/schemas/xhtml-basic10-module-redefines-1.xsd
101
+ - data/schemas/xhtml-frames-1.xsd
102
+ - data/schemas/xhtml-basic11.xsd
103
+ - data/schemas/xhtml-edit-1.xsd
104
+ - data/schemas/xml-handlers-1.xsd
105
+ - data/schemas/xhtml-basic10.xsd
119
106
  - data/schemas/xhtml11-modules-1.xsd
120
- - data/schemas/xhtml-blkpres-1.xsd
121
- - data/schemas/xhtml-basic11.dtd
122
- - data/schemas/xhtml-inlpres-1.xsd
107
+ - data/schemas/xhtml-basic10-modules-1.xsd
123
108
  - data/schemas/xhtml-inlphras-1.xsd
109
+ - data/schemas/xhtml-inputmode-1.xsd
110
+ - data/schemas/xhtml-ruby-basic-1.xsd
111
+ - data/schemas/xhtml1-strict.dtd
112
+ - data/schemas/xhtml-notations-1.xsd
113
+ - data/schemas/xhtml-rdfa-model-1.xsd
114
+ - data/schemas/xhtml1-transitional.xsd
115
+ - data/schemas/xhtml-image-1.xsd
116
+ - data/schemas/xhtml-basic10-model-1.xsd
117
+ - data/schemas/xhtml11.xsd
118
+ - data/schemas/xhtml-inlstruct-1.xsd
119
+ - data/schemas/xhtml-inlpres-1.xsd
120
+ - data/schemas/xml-events-attribs-2.xsd
121
+ - data/schemas/xhtml-link-1.xsd
122
+ - data/schemas/xhtml-framework-1.xsd
123
+ - data/schemas/xhtml-text-1.xsd
124
+ - data/schemas/xhtml-rdfa-1.xsd
125
+ - data/schemas/xhtml-legacy-1.xsd
126
+ - data/schemas/xml-events-1.xsd
127
+ - data/schemas/xml-script-1.xsd
124
128
  - data/schemas/xhtml-misc-1.xsd
125
- - data/schemas/xhtml-symbol.ent
129
+ - data/schemas/loose.dtd
130
+ - data/schemas/xhtml-lat1.ent
131
+ - data/schemas/xhtml-basic-form-1.xsd
132
+ - data/schemas/xhtml-basic11-modules-1.xsd
133
+ - data/schemas/xhtml-nameident-1.xsd
126
134
  - data/schemas/xhtml1-frameset.xsd
127
- - data/schemas/xhtml-meta-1.xsd
128
135
  - data/schemas/xhtml1-frameset.dtd
136
+ - data/schemas/xhtml-script-1.xsd
137
+ - data/schemas/xhtml-target-1.xsd
138
+ - data/schemas/xhtml-ruby-1.xsd
139
+ - data/schemas/xhtml1-transitional.dtd
140
+ - data/schemas/xhtml-meta-1.xsd
141
+ - data/schemas/xhtml-events-1.xsd
142
+ - data/schemas/xhtml-inlstyle-1.xsd
143
+ - data/schemas/xhtml-csismap-1.xsd
144
+ - data/schemas/xhtml2.xsd
145
+ - data/schemas/xhtml-metaAttributes-1.xsd
129
146
  - data/schemas/xml-events-copyright-2.xsd
130
- - data/schemas/xml-handlers-2.xsd
131
- - data/schemas/xhtml-object-1.xsd
132
- - data/schemas/xhtml-bdo-1.xsd
133
147
  - data/schemas/frameset.dtd
134
- - data/schemas/xml-events-1.xsd
135
- - data/schemas/loose.dtd
136
- - data/schemas/xhtml-basic10-model-1.xsd
137
- - data/schemas/xhtml-table-1.xsd
138
- - data/schemas/xhtml2.xsd
139
- - data/schemas/xhtml-print-model-1.xsd
140
- - data/schemas/xhtml-rdfa-1.xsd
141
- - data/schemas/xhtml-basic-form-1.xsd
142
- - data/schemas/xhtml-inputmode-1.xsd
143
- - data/schemas/xhtml-ssismap-1.xsd
144
- - data/schemas/xhtml-basic10-modules-1.xsd
145
- - data/schemas/xhtml-events-1.xsd
146
- - data/schemas/xhtml-form-1.xsd
148
+ - data/schemas/xhtml-base-1.xsd
149
+ - data/schemas/xhtml-blkpres-1.xsd
150
+ - data/schemas/xhtml-blkstruct-1.xsd
151
+ - data/schemas/xhtml-rdfa-modules-1.xsd
152
+ - data/schemas/xml-events-copyright-1.xsd
153
+ - data/schemas/xhtml11-module-redefines-1.xsd
154
+ - data/schemas/xhtml11-model-1.xsd
155
+ - data/schemas/xml-events-2.xsd
156
+ - data/schemas/xhtml-print-1.xsd
147
157
  - data/schemas/xhtml-struct-1.xsd
148
- - data/schemas/xml-script-1.xsd
149
- - data/schemas/xhtml-print-modules-1.xsd
150
- - data/schemas/xhtml-basic10.xsd
158
+ - data/schemas/xhtml-special.ent
151
159
  - data/schemas/xframes-1.xsd
152
- - data/schemas/xhtml-rdfa-1.dtd
160
+ - data/schemas/xhtml-copyright-1.xsd
161
+ - data/schemas/xhtml-param-1.xsd
162
+ - data/schemas/xhtml-basic11.dtd
163
+ - data/schemas/xhtml-basic-table-1.xsd
164
+ - data/schemas/xhtml-access-1.xsd
153
165
  - data/schemas/xhtml-datatypes-1.xsd
166
+ - data/schemas/xhtml-print-model-1.xsd
167
+ - data/schemas/strict.dtd
168
+ - data/schemas/xhtml-attribs-1.xsd
169
+ - data/schemas/xhtml-rdfa-1.dtd
170
+ - data/schemas/xhtml-blkphras-1.xsd
171
+ - data/schemas/xhtml-print-modules-1.xsd
172
+ - data/schemas/xhtml-table-1.xsd
173
+ - data/schemas/xhtml-style-1.xsd
174
+ - data/schemas/xml-handlers-2.xsd
154
175
  - data/schemas/xhtml-pres-1.xsd
155
- - data/schemas/xhtml-charent-1.xsd
156
- - data/schemas/xhtml1-transitional.dtd
157
- - data/schemas/xhtml-access-1.xsd
158
- - data/schemas/xhtml-target-1.xsd
159
- - data/schemas/xhtml-param-1.xsd
160
- - data/schemas/xhtml-special.ent
161
- - data/schemas/xhtml-legacy-1.xsd
162
- - data/schemas/xhtml-frames-1.xsd
163
- - data/schemas/xhtml11-model-1.xsd
164
- - data/schemas/xhtml-inlstyle-1.xsd
165
- - data/schemas/xhtml-text-1.xsd
166
- - data/schemas/xhtml1-strict.dtd
167
- - data/schemas/xhtml-list-1.xsd
168
- - data/schemas/xhtml-framework-1.xsd
169
- - data/schemas/xml-events-copyright-1.xsd
170
- - data/schemas/xhtml-print-1.xsd
171
- - data/schemas/xml-events-2.xsd
176
+ - data/schemas/xml-events-attribs-1.xsd
172
177
  - data/schemas/xhtml-applet-1.xsd
173
- - data/schemas/xhtml-style-1.xsd
174
- - data/schemas/xhtml-base-1.xsd
175
- - data/schemas/xhtml-nameident-1.xsd
176
- - data/schemas/xhtml-iframe-1.xsd
177
- - data/schemas/xhtml-inlstruct-1.xsd
178
- - data/schemas/xhtml-notations-1.xsd
179
- - data/schemas/xhtml11-module-redefines-1.xsd
180
- - data/schemas/xhtml-basic11-modules-1.xsd
181
- - data/schemas/xml-events-attribs-2.xsd
182
- - data/schemas/xhtml-rdfa-model-1.xsd
183
- - data/schemas/xhtml-script-1.xsd
178
+ - data/schemas/xhtml-bdo-1.xsd
179
+ - data/schemas/xhtml1-strict.xsd
180
+ - data/schemas/xhtml-object-1.xsd
181
+ - data/schemas/xhtml-basic11-model-1.xsd
182
+ - data/schemas/xhtml-symbol.ent
184
183
  - data/schemas/xhtml-hypertext-1.xsd
185
- - data/schemas/xhtml-rdfa-modules-1.xsd
186
- - data/schemas/xhtml-image-1.xsd
187
184
  - data/schemas/xml.xsd
188
- - data/schemas/xhtml-ruby-basic-1.xsd
189
- - data/schemas/xhtml-basic11.xsd
190
- - data/schemas/xml-handlers-1.xsd
191
- - data/schemas/xml-events-attribs-1.xsd
192
- - data/schemas/xhtml-link-1.xsd
193
- - data/schemas/xhtml-metaAttributes-1.xsd
194
- - data/schemas/xhtml-basic-table-1.xsd
195
- - data/schemas/xhtml-csismap-1.xsd
196
- - data/schemas/xhtml-basic11-model-1.xsd
197
- - data/schemas/xhtml-copyright-1.xsd
198
- - data/schemas/xhtml-basic10-module-redefines-1.xsd
199
- - data/schemas/strict.dtd
200
- - data/schemas/xhtml-edit-1.xsd
201
- - data/schemas/xhtml11.xsd
202
- - data/schemas/xhtml-lat1.ent
203
- - data/schemas/xhtml-attribs-1.xsd
204
- - data/schemas/xhtml-ruby-1.xsd
205
- has_rdoc: true
185
+ - data/schemas/xhtml-form-1.xsd
186
+ - data/schemas/xhtml-iframe-1.xsd
187
+ - data/schemas/xhtml-ssismap-1.xsd
188
+ - data/schemas/xhtml-list-1.xsd
189
+ - data/schemas/xhtml-charent-1.xsd
190
+ - spec/spec_helper.rb
191
+ - spec/data/html5.html
192
+ - spec/data/html4-strict.html
193
+ - spec/data/validator.nu-success.html
194
+ - spec/data/html5-linuxfr.html
195
+ - spec/data/xhtml1-strict.html
196
+ - spec/core_spec.rb
197
+ - spec/fakeweb_helper.rb
198
+ - spec/validator_spec.rb
199
+ - bin/validate-website
200
+ - bin/validate-website-static
206
201
  homepage: http://github.com/spk/validate-website
207
- licenses:
202
+ licenses:
208
203
  - MIT
209
204
  post_install_message:
210
205
  rdoc_options: []
211
-
212
- require_paths:
206
+ require_paths:
213
207
  - lib
214
- required_ruby_version: !ruby/object:Gem::Requirement
208
+ required_ruby_version: !ruby/object:Gem::Requirement
215
209
  none: false
216
- requirements:
217
- - - ">="
218
- - !ruby/object:Gem::Version
219
- hash: 3
220
- segments:
221
- - 0
222
- version: "0"
223
- required_rubygems_version: !ruby/object:Gem::Requirement
210
+ requirements:
211
+ - - ! '>='
212
+ - !ruby/object:Gem::Version
213
+ version: '0'
214
+ required_rubygems_version: !ruby/object:Gem::Requirement
224
215
  none: false
225
- requirements:
226
- - - ">="
227
- - !ruby/object:Gem::Version
228
- hash: 3
229
- segments:
230
- - 0
231
- version: "0"
232
- requirements:
216
+ requirements:
217
+ - - ! '>='
218
+ - !ruby/object:Gem::Version
219
+ version: '0'
220
+ requirements:
233
221
  - anemone
234
222
  - rainbow
223
+ - multipart_body
235
224
  rubyforge_project:
236
- rubygems_version: 1.6.2
225
+ rubygems_version: 1.7.2
237
226
  signing_key:
238
227
  specification_version: 3
239
228
  summary: Web crawler for checking the validity of your documents
240
- test_files:
229
+ test_files:
230
+ - spec/spec_helper.rb
231
+ - spec/data/html5.html
232
+ - spec/data/html4-strict.html
233
+ - spec/data/validator.nu-success.html
234
+ - spec/data/html5-linuxfr.html
235
+ - spec/data/xhtml1-strict.html
241
236
  - spec/core_spec.rb
237
+ - spec/fakeweb_helper.rb
242
238
  - spec/validator_spec.rb