gepub 1.0.2 → 1.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +3 -3
- data/gepub.gemspec +1 -2
- data/lib/gepub/version.rb +1 -1
- metadata +4 -110
- data/spec/bindings_spec.rb +0 -34
- data/spec/book_spec.rb +0 -307
- data/spec/builder_spec.rb +0 -614
- data/spec/example_spec.rb +0 -192
- data/spec/fixtures/builder/img/cover.jpg +0 -0
- data/spec/fixtures/builder/resources/noise.m4 +0 -0
- data/spec/fixtures/builder/resources/noise_2.m4a +0 -0
- data/spec/fixtures/builder/text/cover.xhtml +0 -11
- data/spec/fixtures/builder/text/localresource.conf +0 -2
- data/spec/fixtures/builder/text/memo.txt +0 -1
- data/spec/fixtures/builder/text/nav.xhtml +0 -12
- data/spec/fixtures/epubcheck-4.1.1/CHANGELOG.txt +0 -92
- data/spec/fixtures/epubcheck-4.1.1/LICENSE.txt +0 -28
- data/spec/fixtures/epubcheck-4.1.1/README.txt +0 -101
- data/spec/fixtures/epubcheck-4.1.1/THIRD-PARTY.txt +0 -60
- data/spec/fixtures/epubcheck-4.1.1/epubcheck.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/Saxon-HE-9.8.0-8.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/animal-sniffer-annotations-1.14.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/checker-compat-qual-2.0.0.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/common-image-3.4.1.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/common-io-3.4.1.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/common-lang-3.4.1.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/commons-compress-1.18.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/error_prone_annotations-2.1.3.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/guava-24.0-android.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/imageio-core-3.4.1.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/imageio-jpeg-3.4.1.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/imageio-metadata-3.4.1.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/j2objc-annotations-1.1.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/jackson-core-asl-1.9.12.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/jackson-mapper-asl-1.9.12.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/jing-20120724.0.0.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/jsr305-1.3.9.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/lib/sac-1.3.jar +0 -0
- data/spec/fixtures/epubcheck-4.1.1/licenses/Apache-2.0.txt +0 -201
- data/spec/fixtures/epubcheck-4.1.1/licenses/BSD-3-Clause.txt +0 -27
- data/spec/fixtures/epubcheck-4.1.1/licenses/MPL-1.0.txt +0 -360
- data/spec/fixtures/epubcheck-4.1.1/licenses/W3C.txt +0 -16
- data/spec/fixtures/testdata/0.html +0 -12
- data/spec/fixtures/testdata/1.html +0 -10
- data/spec/fixtures/testdata/image1.jpg +0 -0
- data/spec/fixtures/testdata/package_2_0.opf +0 -23
- data/spec/fixtures/testdata/test.opf +0 -69
- data/spec/fixtures/testdata/test2.opf +0 -63
- data/spec/fixtures/testdata/test_with_bindings.opf +0 -67
- data/spec/fixtures/testdata/wasteland-20120118.epub +0 -0
- data/spec/gepub_deprectad_api_spec.rb +0 -229
- data/spec/gepub_spec.rb +0 -229
- data/spec/manifest_spec.rb +0 -36
- data/spec/metadata_spec.rb +0 -219
- data/spec/package_spec.rb +0 -150
- data/spec/spec_helper.rb +0 -57
- data/spec/spine_spec.rb +0 -55
data/spec/example_spec.rb
DELETED
@@ -1,192 +0,0 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
require File.dirname(__FILE__) + '/spec_helper.rb'
|
3
|
-
require 'rubygems'
|
4
|
-
|
5
|
-
describe 'GEPUB usage' do
|
6
|
-
context 'On using Builder' do
|
7
|
-
end
|
8
|
-
|
9
|
-
context 'On generating EPUB' do
|
10
|
-
it 'should generate simple EPUB3 with Builder and buffer' do
|
11
|
-
workdir = File.join(File.dirname(__FILE__), 'fixtures', 'testdata')
|
12
|
-
builder = GEPUB::Builder.new {
|
13
|
-
unique_identifier 'http:/example.jp/bookid_in_url', 'BookID', 'URL'
|
14
|
-
language 'ja'
|
15
|
-
title 'GEPUBサンプル文書'
|
16
|
-
file_as 'GEPUB Sample Book'
|
17
|
-
alt 'en' => 'GEPUB Sample Book (Japanese)',
|
18
|
-
'el' => 'GEPUB δείγμα (Ιαπωνικά)',
|
19
|
-
'th' => 'GEPUB ตัวอย่าง (ญี่ปุ่น)'
|
20
|
-
|
21
|
-
subtitle 'これはあくまでサンプルです'
|
22
|
-
alt 'en' => 'This book is just a sample'
|
23
|
-
creator '小嶋智'
|
24
|
-
contributors 'Denshobu', 'Asagaya Densho', 'Shonan Densho Teidan', 'eMagazine Torutaru'
|
25
|
-
resources(:workdir => workdir) {
|
26
|
-
cover_image 'img/image1.jpg' => 'image1.jpg'
|
27
|
-
ordered {
|
28
|
-
file 'text/chap1.xhtml' => StringIO.new('<html xmlns="http://www.w3.org/1999/xhtml"><head><title>c1</title></head><body><p>the first page</p></body></html>')
|
29
|
-
heading 'Chapter 1'
|
30
|
-
file 'text/chap1-1.xhtml' => StringIO.new('<html xmlns="http://www.w3.org/1999/xhtml"><head><title>c2</title></head><body><p>the second page</p></body></html>')
|
31
|
-
file 'text/chap2.xhtml' => StringIO.new('<html xmlns="http://www.w3.org/1999/xhtml"><head><title>c3</title></head><body><p>the third page</p></body></html>')
|
32
|
-
heading 'Chapter 2'
|
33
|
-
}
|
34
|
-
}
|
35
|
-
}
|
36
|
-
epubname = File.join(File.dirname(__FILE__), 'example_test_with_builder_buffer.epub')
|
37
|
-
File.open(epubname, 'wb') { |io| io.write builder.generate_epub_stream.string }
|
38
|
-
epubcheck(epubname)
|
39
|
-
end
|
40
|
-
|
41
|
-
it 'should generate simple EPUB3 with Builder' do
|
42
|
-
workdir = File.join(File.dirname(__FILE__), 'fixtures', 'testdata')
|
43
|
-
builder = GEPUB::Builder.new {
|
44
|
-
unique_identifier 'http:/example.jp/bookid_in_url', 'BookID', 'URL'
|
45
|
-
language 'ja'
|
46
|
-
title 'GEPUBサンプル文書'
|
47
|
-
file_as 'GEPUB Sample Book'
|
48
|
-
alt 'en' => 'GEPUB Sample Book (Japanese)',
|
49
|
-
'el' => 'GEPUB δείγμα (Ιαπωνικά)',
|
50
|
-
'th' => 'GEPUB ตัวอย่าง (ญี่ปุ่น)'
|
51
|
-
|
52
|
-
subtitle 'これはあくまでサンプルです'
|
53
|
-
alt 'en' => 'This book is just a sample'
|
54
|
-
creator '小嶋智'
|
55
|
-
contributors 'Denshobu', 'Asagaya Densho', 'Shonan Densho Teidan', 'eMagazine Torutaru'
|
56
|
-
resources(:workdir => workdir) {
|
57
|
-
cover_image 'img/image1.jpg' => 'image1.jpg'
|
58
|
-
ordered {
|
59
|
-
file 'text/chap1.xhtml' => StringIO.new('<html xmlns="http://www.w3.org/1999/xhtml"><head><title>c1</title></head><body><p>the first page</p></body></html>')
|
60
|
-
heading 'Chapter 1'
|
61
|
-
file 'text/chap1-1.xhtml' => StringIO.new('<html xmlns="http://www.w3.org/1999/xhtml"><head><title>c2</title></head><body><p>the second page</p></body></html>')
|
62
|
-
file 'text/chap2.xhtml' => StringIO.new('<html xmlns="http://www.w3.org/1999/xhtml"><head><title>c3</title></head><body><p>the third page</p></body></html>')
|
63
|
-
heading 'Chapter 2'
|
64
|
-
}
|
65
|
-
}
|
66
|
-
}
|
67
|
-
epubname = File.join(File.dirname(__FILE__), 'example_test_with_builder.epub')
|
68
|
-
builder.generate_epub(epubname)
|
69
|
-
epubcheck(epubname)
|
70
|
-
end
|
71
|
-
|
72
|
-
it 'should generate simple EPUB3 with rather complicated matadata' do
|
73
|
-
book = GEPUB::Book.new
|
74
|
-
book.primary_identifier('http:/example.jp/bookid_in_url', 'BookID', 'URL')
|
75
|
-
book.language = 'ja'
|
76
|
-
|
77
|
-
# you can add metadata and its property using block
|
78
|
-
book.add_title('GEPUBサンプル文書', title_type: GEPUB::TITLE_TYPE::MAIN) {
|
79
|
-
|title|
|
80
|
-
title.lang = 'ja'
|
81
|
-
title.file_as = 'GEPUB Sample Book'
|
82
|
-
title.display_seq = 1
|
83
|
-
title.add_alternates(
|
84
|
-
'en' => 'GEPUB Sample Book (Japanese)',
|
85
|
-
'el' => 'GEPUB δείγμα (Ιαπωνικά)',
|
86
|
-
'th' => 'GEPUB ตัวอย่าง (ญี่ปุ่น)')
|
87
|
-
}
|
88
|
-
# you can do the same thing using method chain
|
89
|
-
book.add_title('これはあくまでサンプルです',title_type: GEPUB::TITLE_TYPE::SUBTITLE).display_seq(2).add_alternates('en' => 'this book is just a sample.')
|
90
|
-
book.add_creator('小嶋智') {
|
91
|
-
|creator|
|
92
|
-
creator.display_seq = 1
|
93
|
-
creator.add_alternates('en' => 'KOJIMA Satoshi')
|
94
|
-
}
|
95
|
-
book.add_contributor('電書部', display_seq: 1, alternates: {'en' => 'Denshobu'})
|
96
|
-
book.add_contributor('アサガヤデンショ', display_seq: 2, alternates: { 'en' => 'Asagaya Densho' })
|
97
|
-
book.add_contributor('湘南電書鼎談').display_seq(3).add_alternates('en' => 'Shonan Densho Teidan')
|
98
|
-
book.add_contributor('電子雑誌トルタル').display_seq(4).add_alternates('en' => 'eMagazine Torutaru')
|
99
|
-
|
100
|
-
imgfile = File.join(File.dirname(__FILE__), 'fixtures', 'testdata', 'image1.jpg')
|
101
|
-
book.add_item('img/image1.jpg',content: imgfile).cover_image
|
102
|
-
|
103
|
-
# within ordered block, add_item will be added to spine.
|
104
|
-
book.ordered {
|
105
|
-
book.add_item('text/chap1.xhtml').add_content(StringIO.new('<html xmlns="http://www.w3.org/1999/xhtml"><head><title>c1</title></head><body><p>the first page</p></body></html>')).toc_text('Chapter 1')
|
106
|
-
book.add_item('text/chap1-1.xhtml').add_content(StringIO.new('<html xmlns="http://www.w3.org/1999/xhtml"><head><title>c2</title></head><body><p>the second page</p></body></html>')) # do not appear on table of contents
|
107
|
-
book.add_item('text/chap2.xhtml').add_content(StringIO.new('<html xmlns="http://www.w3.org/1999/xhtml"><head><title>c3</title></head><body><p>the third page</p></body></html>')).toc_text('Chapter 2')
|
108
|
-
}
|
109
|
-
epubname = File.join(File.dirname(__FILE__), 'example_test.epub')
|
110
|
-
book.generate_epub(epubname)
|
111
|
-
epubcheck(epubname)
|
112
|
-
end
|
113
|
-
|
114
|
-
it 'should generate simple EPUB3 with some nil metadata' do
|
115
|
-
book = GEPUB::Book.new
|
116
|
-
book.identifier = 'http://example.jp/bookid_in_url'
|
117
|
-
book.title = 'GEPUB Sample Book'
|
118
|
-
book.creator = 'KOJIMA Satoshi'
|
119
|
-
book.language = 'ja'
|
120
|
-
book.publisher = nil
|
121
|
-
|
122
|
-
book.ordered do
|
123
|
-
item = book.add_item('name.xhtml')
|
124
|
-
item.add_content StringIO.new('<html xmlns="http://www.w3.org/1999/xhtml"><head><title>c1</title></head><body><p>the first page</p></body></html>')
|
125
|
-
end
|
126
|
-
|
127
|
-
epubname = File.join(File.dirname(__FILE__), 'example_test.epub')
|
128
|
-
book.generate_epub(epubname)
|
129
|
-
epubcheck(epubname)
|
130
|
-
end
|
131
|
-
|
132
|
-
it 'should generate simple EPUB3 with landmarks' do
|
133
|
-
book = GEPUB::Book.new
|
134
|
-
book.primary_identifier('http:/example.jp/bookid_in_url', 'BookID', 'URL')
|
135
|
-
book.language = 'ja'
|
136
|
-
|
137
|
-
# you can add metadata and its property using block
|
138
|
-
book.add_title('GEPUBサンプル文書', title_type: GEPUB::TITLE_TYPE::MAIN) {
|
139
|
-
|title|
|
140
|
-
title.lang = 'ja'
|
141
|
-
title.file_as = 'GEPUB Sample Book'
|
142
|
-
title.display_seq = 1
|
143
|
-
title.add_alternates(
|
144
|
-
'en' => 'GEPUB Sample Book (Japanese)',
|
145
|
-
'el' => 'GEPUB δείγμα (Ιαπωνικά)',
|
146
|
-
'th' => 'GEPUB ตัวอย่าง (ญี่ปุ่น)')
|
147
|
-
}
|
148
|
-
# you can do the same thing using method chain
|
149
|
-
book.add_title('これはあくまでサンプルです',title_type: GEPUB::TITLE_TYPE::SUBTITLE).display_seq(2).add_alternates('en' => 'this book is just a sample.')
|
150
|
-
book.add_creator('小嶋智') {
|
151
|
-
|creator|
|
152
|
-
creator.display_seq = 1
|
153
|
-
creator.add_alternates('en' => 'KOJIMA Satoshi')
|
154
|
-
}
|
155
|
-
book.add_contributor('電書部', display_seq: 1, alternates: {'en' => 'Denshobu'})
|
156
|
-
book.add_contributor('アサガヤデンショ', display_seq: 2, alternates: { 'en' => 'Asagaya Densho' })
|
157
|
-
book.add_contributor('湘南電書鼎談').display_seq(3).add_alternates('en' => 'Shonan Densho Teidan')
|
158
|
-
book.add_contributor('電子雑誌トルタル').display_seq(4).add_alternates('en' => 'eMagazine Torutaru')
|
159
|
-
|
160
|
-
imgfile = File.join(File.dirname(__FILE__), 'fixtures', 'testdata', 'image1.jpg')
|
161
|
-
book.add_item('img/image1.jpg',content: imgfile).cover_image
|
162
|
-
|
163
|
-
# within ordered block, add_item will be added to spine.
|
164
|
-
book.ordered {
|
165
|
-
book.add_item('text/cover.xhtml').add_content(StringIO.new('<html xmlns="http://www.w3.org/1999/xhtml"><head><title>cover</title></head><body><h1>the book title</h1><img src="../img/image1.jpg" /></body></html>')).landmark(type: 'cover', title: '表紙')
|
166
|
-
book.add_item('text/chap1.xhtml').add_content(StringIO.new('<html xmlns="http://www.w3.org/1999/xhtml"><head><title>c1</title></head><body><p>the first page</p></body></html>')).toc_text('Chapter 1').landmark(type: 'bodymatter', title: '本文')
|
167
|
-
book.add_item('text/chap1-1.xhtml').add_content(StringIO.new('<html xmlns="http://www.w3.org/1999/xhtml"><head><title>c2</title></head><body><p>the second page</p></body></html>')) # do not appear on table of contents
|
168
|
-
book.add_item('text/chap2.xhtml').add_content(StringIO.new('<html xmlns="http://www.w3.org/1999/xhtml"><head><title>c3</title></head><body><p>the third page</p></body></html>')).toc_text('Chapter 2')
|
169
|
-
}
|
170
|
-
epubname = File.join(File.dirname(__FILE__), 'example_test.epub')
|
171
|
-
|
172
|
-
# check nav doc
|
173
|
-
xml = Nokogiri::XML::Document.parse book.nav_doc
|
174
|
-
|
175
|
-
# check toc
|
176
|
-
tocs = xml.xpath("//xmlns:nav[@epub:type='toc']/xmlns:ol/xmlns:li")
|
177
|
-
expect(tocs.size).to eq 2
|
178
|
-
expect(tocs[0].content.strip).to eq 'Chapter 1'
|
179
|
-
expect(tocs[1].content.strip).to eq 'Chapter 2'
|
180
|
-
|
181
|
-
# check landmarks
|
182
|
-
landmarks = xml.xpath("//xmlns:nav[@epub:type='landmarks']/xmlns:ol/xmlns:li/xmlns:a")
|
183
|
-
expect(landmarks.size).to eq 2
|
184
|
-
expect(landmarks[0]['epub:type']).to eq 'cover'
|
185
|
-
expect(landmarks[0]['href']).to eq 'text/cover.xhtml'
|
186
|
-
expect(landmarks[1]['epub:type']).to eq 'bodymatter'
|
187
|
-
expect(landmarks[1]['href']).to eq 'text/chap1.xhtml'
|
188
|
-
book.generate_epub(epubname)
|
189
|
-
epubcheck(epubname)
|
190
|
-
end
|
191
|
-
end
|
192
|
-
end
|
Binary file
|
Binary file
|
Binary file
|
@@ -1 +0,0 @@
|
|
1
|
-
just a plain text.
|
@@ -1,12 +0,0 @@
|
|
1
|
-
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops">
|
2
|
-
<head></head>
|
3
|
-
<body>
|
4
|
-
<nav epub:type="toc" id="toc">
|
5
|
-
<h1>Table of contents</h1>
|
6
|
-
<ol>
|
7
|
-
<li><a href="foobar.xhtml">Chapter 1</a> </li>
|
8
|
-
<li> <a href="barbar.xhtml">Chapter 2</a></li>
|
9
|
-
</ol>
|
10
|
-
</nav>
|
11
|
-
</body>
|
12
|
-
</html>
|
@@ -1,92 +0,0 @@
|
|
1
|
-
# EPUBCheck change log
|
2
|
-
|
3
|
-
<a name="4.1.1"></a>
|
4
|
-
## [4.1.1](https://github.com/w3c/epubcheck/compare/v4.1.0...v4.1.1) (2019-01-22)
|
5
|
-
|
6
|
-
This is a maintenance release of EPUBCheck, the conformance validator for EPUB publications. It mostly consists of bug fixes and updated localized messages.
|
7
|
-
|
8
|
-
This release was made by the DAISY Consortium, for the W3C.
|
9
|
-
|
10
|
-
Many thanks to the various people who contributed to this release, notably the team of translators including Elisa Molinari, Emiliano Molina, Gregorio Pellegrino, Masayoshi Takahashi, Merijn de Haen, Thiago de Oliveira Pereira, Vincent Gros, Woongyoung Park… and especially Tobias Fischer, who has been coordinating the translation contributions!
|
11
|
-
|
12
|
-
**Note:** this release is part of the 4.1.x stable stream, which checks conformance to the EPUB 3.0.1 family of specifications. It does _not_ include support for the newer EPUB 3.2 specifications. For a preview of EPUB 3.2 conformance checking, feel free to try the latest release in the 4.2.x beta stream (currently [v4.2.0-alpha-1](https://github.com/w3c/epubcheck/releases/tag/v4.2.0-alpha-1))!
|
13
|
-
|
14
|
-
### Bug Fixes
|
15
|
-
|
16
|
-
* `switch` item property doesn't apply to `svg:switch` ([91b84ad](https://github.com/w3c/epubcheck/commit/91b84ad)), closes [#857](https://github.com/w3c/epubcheck/issues/857)
|
17
|
-
* better check remote resources ([85b5f77](https://github.com/w3c/epubcheck/commit/85b5f77)), closes [#852](https://github.com/w3c/epubcheck/issues/852)
|
18
|
-
* better support the EPUB Accessibility Vocabulary ([8a9cf63](https://github.com/w3c/epubcheck/commit/8a9cf63)), closes [#810](https://github.com/w3c/epubcheck/issues/810)
|
19
|
-
* consider all `video/*` as video media types ([27ad571](https://github.com/w3c/epubcheck/commit/27ad571))
|
20
|
-
* do not check entity references in comment or CDATA ([#949](https://github.com/w3c/epubcheck/issues/949)) ([4307542](https://github.com/w3c/epubcheck/commit/4307542)), closes [#800](https://github.com/w3c/epubcheck/issues/800)
|
21
|
-
* do not report CSS 'font-size: 0' as an error ([4e17714](https://github.com/w3c/epubcheck/commit/4e17714)), closes [#922](https://github.com/w3c/epubcheck/issues/922)
|
22
|
-
* keep on processing after failing to read GIFs ([2a244e7](https://github.com/w3c/epubcheck/commit/2a244e7))
|
23
|
-
* messages of missing/incorrect locale cannot be translated ([91fac12](https://github.com/w3c/epubcheck/commit/91fac12))
|
24
|
-
* resolve relative URIs against their base ([d42ccd6](https://github.com/w3c/epubcheck/commit/d42ccd6)), closes [#527](https://github.com/w3c/epubcheck/issues/527)
|
25
|
-
* valid JPEG files were considered 'corrupted' ([c4a2cfa](https://github.com/w3c/epubcheck/commit/c4a2cfa)), closes [#850](https://github.com/w3c/epubcheck/issues/850)
|
26
|
-
* wrong report of duplicate landmarks in Nav Doc ([#942](https://github.com/w3c/epubcheck/issues/942)) ([e06a552](https://github.com/w3c/epubcheck/commit/e06a552)), closes [#926](https://github.com/w3c/epubcheck/issues/926)
|
27
|
-
|
28
|
-
|
29
|
-
### Features
|
30
|
-
|
31
|
-
* update localized messages for several languages ([116e61b](https://github.com/w3c/epubcheck/commit/116e61b))
|
32
|
-
|
33
|
-
|
34
|
-
<a name="4.1.0"></a>
|
35
|
-
## [4.1.0](https://github.com/w3c/epubcheck/compare/v4.0.2...v4.1.0) (2018-11-26)
|
36
|
-
|
37
|
-
### Bug Fixes
|
38
|
-
|
39
|
-
* silence a Saxon warning (Schematron XSLT) ([5045d78b](https://github.com/w3c/epubcheck/commit/5045d78b)), closes #859
|
40
|
-
* fix path resolution in EpubNCXCheck (ctc package) ([f572a861](https://github.com/w3c/epubcheck/commit/f572a861))
|
41
|
-
* handle `IllegalStateException` in NCX checker ([25336894](https://github.com/w3c/epubcheck/commit/25336894)), closes #666
|
42
|
-
* check that the `mimetype` file is uncompressed ([6764e250](https://github.com/w3c/epubcheck/commit/6764e250)), closes #303
|
43
|
-
* fix wrong exit message for single file validation ([68af5a9a](https://github.com/w3c/epubcheck/commit/68af5a9a)), closes #740
|
44
|
-
* allow ARIA `role` attributes in SVG ([49412e05](https://github.com/w3c/epubcheck/commit/49412e05)), closes #769
|
45
|
-
* allow empty `xml:lang` attributes ([392c2f68](https://github.com/w3c/epubcheck/commit/392c2f68)), closes #777
|
46
|
-
* handle no src uri in fonts, correct embedded font boolean in the XML output ([a26f9c13](https://github.com/w3c/epubcheck/commit/a26f9c13)), closes #773
|
47
|
-
* fix issues with landmarks checks `ACC-008` ([74d0bdd1](https://github.com/w3c/epubcheck/commit/74d0bdd1)), closes #457, #734
|
48
|
-
* fix focus issue when using EPUBCheck in a GUI app ([cd63a166](https://github.com/w3c/epubcheck/commit/cd63a166)), closes #665
|
49
|
-
* fix incorrect warning `ACC_011` ([5e6a69af](https://github.com/w3c/epubcheck/commit/5e6a69af)), closes #680
|
50
|
-
* make the `type` attribute optional on SVG `style` elements ([275f6b6a](https://github.com/w3c/epubcheck/commit/275f6b6a)), closes #688
|
51
|
-
* exit with error when directory is not found in expanded mode ([e42d189c](https://github.com/w3c/epubcheck/commit/e42d189c)), closes #525
|
52
|
-
* fix a `NullPointerException` when checking an empty meta rendition element in OPF ([42d75297](https://github.com/w3c/epubcheck/commit/42d75297)), closes #727
|
53
|
-
* fix `DefaultReportImpl` to avoid duplicate path info in message locations ([9321355b](https://github.com/w3c/epubcheck/commit/9321355b)), closes #729
|
54
|
-
* fix broken `OPF_060` and `OPF_061` message format ([9f0e7d12](https://github.com/w3c/epubcheck/commit/9f0e7d12)), closes #658
|
55
|
-
* fix broken `OPF_060` and `OPF_061` checks for duplicate ZIP entries ([05e96f40](https://github.com/w3c/epubcheck/commit/05e96f40)), closes #728
|
56
|
-
|
57
|
-
### Features
|
58
|
-
|
59
|
-
* allow the configuration of EPUBCheck’s locale ([9b249956](https://github.com/w3c/epubcheck/commit/9b249956)), closes #650, #498
|
60
|
-
* report invalid `dc:identifier` UUIDs validation (as `WARNING`) ([48800a04](https://github.com/w3c/epubcheck/commit/48800a04)), closes #853
|
61
|
-
* change `--version` and `-version` command line options to output EPUBCheck version ([e498c61d](https://github.com/w3c/epubcheck/commit/e498c61d)), closes #743
|
62
|
-
* check files with extensions other than `.epub` ([1b67e046](https://github.com/w3c/epubcheck/commit/1b67e046)), closes #490
|
63
|
-
* report `file://` URL as `INFO` ([8f7a2b7d](https://github.com/w3c/epubcheck/commit/8f7a2b7d)), closes #289
|
64
|
-
* improve messages for `OPF-058` and `OPF-059` ([5e33645e](https://github.com/w3c/epubcheck/commit/5e33645e)), closes #804
|
65
|
-
* enable `NCX_001` check also for EPUB 3 when an NCX file is present ([9715c352](https://github.com/w3c/epubcheck/commit/9715c352))
|
66
|
-
* report non-matching identifiers in OPF and NCX as an error again ([515682dc](https://github.com/w3c/epubcheck/commit/515682dc))
|
67
|
-
* improved css font size validation ([25c0b372](https://github.com/w3c/epubcheck/commit/25c0b372)), closes #529
|
68
|
-
* issue a `WARNING` when landmarks anchors are not unique ([557308ef](https://github.com/w3c/epubcheck/commit/557308ef)), closes #493
|
69
|
-
* issue a `WARNING` when guide/reference elements are not unique ([25f28c01](https://github.com/w3c/epubcheck/commit/25f28c01)), closes #493
|
70
|
-
* partial update of OPF 2.0 RelaxNG schema to latest version (changing datatype `text` to `anyURI` for `href` attributes) ([251aa936](https://github.com/w3c/epubcheck/commit/251aa936)), closes #725
|
71
|
-
* display error/warning count in EPUBCheck results ([b7babedf](https://github.com/w3c/epubcheck/commit/b7babedf)), closes #655
|
72
|
-
* add file path info in `uri` attributes of the XML report ([c958c117](https://github.com/w3c/epubcheck/commit/c958c117)), closes #540
|
73
|
-
* update the XHTML 1.1 RelaxNG schema to latest version ([4c6fb49a](https://github.com/w3c/epubcheck/commit/4c6fb49a))
|
74
|
-
* update the OPF20 RNG schema in sync with official schema to validate empty guide elements ([6540b03d](https://github.com/w3c/epubcheck/commit/6540b03d))
|
75
|
-
* report an `ERROR` when `@clipBegin` equals `@clipEnd` in SMIL Media Overlays ([00716768](https://github.com/w3c/epubcheck/commit/00716768)), closes #568
|
76
|
-
* improve Nav Doc validation ([d32de854](https://github.com/w3c/epubcheck/commit/d32de854)), closes #763, #759
|
77
|
-
* update the NCX RelaxNG schema to add fixed list of `pageTarget` type values ([b2c9e939](https://github.com/w3c/epubcheck/commit/b2c9e939)), closes #761
|
78
|
-
* improve URL checks ([a44a596b](https://github.com/w3c/epubcheck/commit/a44a596b)), closes #708
|
79
|
-
* rephrase messages `RSC-005`, `RSC-016`, `RSC-017` ([5ef44973](https://github.com/w3c/epubcheck/commit/5ef44973))
|
80
|
-
* add JHove XSD schema declaration in XML output ([e55039c9](https://github.com/w3c/epubcheck/commit/e55039c9)), closes #736
|
81
|
-
* add detailed resource info in `RSC-008` messages ([5f5ef7b7](https://github.com/w3c/epubcheck/commit/5f5ef7b7)), closes #720
|
82
|
-
* add detailed resource info in `RSC-007` messages ([71a76ee4](https://github.com/w3c/epubcheck/commit/71a76ee4)), closes #475
|
83
|
-
|
84
|
-
### Maintenance
|
85
|
-
|
86
|
-
* change the project name to 'EPUBCheck' ([dfd7fd27](https://github.com/w3c/epubcheck/commit/dfd7fd27))
|
87
|
-
* update the minimum source code compatibility to Java 1.7 ([9b249956](https://github.com/w3c/epubcheck/commit/9b249956))
|
88
|
-
* update the Saxon dependency to v9.8 ([bf10f380](https://github.com/w3c/epubcheck/commit/bf10f380))
|
89
|
-
* update the Apache `commons-compress` dependency to v1.18 ([e7dfedd8](https://github.com/w3c/epubcheck/commit/e7dfedd8))
|
90
|
-
* update the Google Guava dependency to v24.0 ([befd9fc3](https://github.com/w3c/epubcheck/commit/befd9fc3))
|
91
|
-
* update the continuous integration build matrix, now testing from Java 7 up to Java 11 ([fb84b23c](https://github.com/w3c/epubcheck/commit/fb84b23c))
|
92
|
-
* various translation updates ([39a9a093](https://github.com/w3c/epubcheck/commit/39a9a093), [6e3a8b41](https://github.com/w3c/epubcheck/commit/6e3a8b41))
|
@@ -1,28 +0,0 @@
|
|
1
|
-
Copyright © 2007 Adobe Systems Incorporated
|
2
|
-
Copyright © 2008 IDPF
|
3
|
-
Copyright © 2017 W3C (MIT, ERCIM, Keio, Beihang)
|
4
|
-
|
5
|
-
Redistribution and use in source and binary forms, with or without
|
6
|
-
modification, are permitted provided that the following conditions are met:
|
7
|
-
|
8
|
-
1. Redistributions of source code must retain the above copyright notice, this
|
9
|
-
list of conditions and the following disclaimer.
|
10
|
-
|
11
|
-
2. Redistributions in binary form must reproduce the above copyright notice,
|
12
|
-
this list of conditions and the following disclaimer in the documentation
|
13
|
-
and/or other materials provided with the distribution.
|
14
|
-
|
15
|
-
3. Neither the name of the copyright holder nor the names of its
|
16
|
-
contributors may be used to endorse or promote products derived from
|
17
|
-
this software without specific prior written permission.
|
18
|
-
|
19
|
-
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
20
|
-
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
21
|
-
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
22
|
-
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
23
|
-
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
24
|
-
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
25
|
-
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
26
|
-
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
27
|
-
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
28
|
-
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
@@ -1,101 +0,0 @@
|
|
1
|
-
EPUBCheck
|
2
|
-
=========
|
3
|
-
|
4
|
-
This folder contains the distribution of the EPUBCheck project.
|
5
|
-
|
6
|
-
EPUBCheck is a tool to validate the conformance of EPUB publications against
|
7
|
-
the EPUB specifications. EPUBCheck can be run as a standalone command-line tool
|
8
|
-
or used as a Java library.
|
9
|
-
|
10
|
-
EPUBCheck is open source software, maintained by the DAISY Consortium on behalf
|
11
|
-
of the W3C.
|
12
|
-
|
13
|
-
EPUBCheck project home: https://github.com/w3c/epubcheck
|
14
|
-
|
15
|
-
|
16
|
-
RUNNING
|
17
|
-
-------
|
18
|
-
|
19
|
-
To run the tool you need a Java runtime (1.7 or above).
|
20
|
-
Any Operating System should do.
|
21
|
-
|
22
|
-
Run it from the command line:
|
23
|
-
|
24
|
-
> java -jar epubcheck.jar file.epub
|
25
|
-
|
26
|
-
All detected errors are simply printed to the standard error stream.
|
27
|
-
|
28
|
-
Print the commandline help with the --help argument:
|
29
|
-
|
30
|
-
> java -jar epubcheck.jar --help
|
31
|
-
|
32
|
-
|
33
|
-
USING AS A LIBRARY
|
34
|
-
------------------
|
35
|
-
|
36
|
-
You can also use EPUBCheck as a library in your Java application. EPUBCheck
|
37
|
-
public interfaces can be found in the `com.adobe.epubcheck.api` package.
|
38
|
-
EPUBCheck class can be used to instantiate a validation engine. Use one of its
|
39
|
-
constructors and then call validate() method. Report is an interface that you
|
40
|
-
can implement to get a list of the errors and warnings reported by the
|
41
|
-
validation engine (instead of the error list being printed out).
|
42
|
-
|
43
|
-
|
44
|
-
LICENSING
|
45
|
-
---------
|
46
|
-
|
47
|
-
EPUBCheck is made available under the terms of the 3-Clause BSD License, a
|
48
|
-
copy of which is available in the file LICENSE.txt.
|
49
|
-
|
50
|
-
The list of licenses of third-party software components is detailed in the
|
51
|
-
file THIRD-PARTY.txt
|
52
|
-
|
53
|
-
|
54
|
-
AUTHORS / CONTRIBUTORS
|
55
|
-
----------------------
|
56
|
-
|
57
|
-
This distribution of EPUBCheck was made by the DAISY Consortium, for the W3C.
|
58
|
-
|
59
|
-
Previous contributors include:
|
60
|
-
|
61
|
-
- Alberto Pettarin
|
62
|
-
- Alexander Walters
|
63
|
-
- Andrew Neitsch
|
64
|
-
- Arwen Pond
|
65
|
-
- Bogdan Iordache
|
66
|
-
- Dave Cramer
|
67
|
-
- dilbirligi
|
68
|
-
- Emiliano Molina
|
69
|
-
- Francisco Sanchez
|
70
|
-
- Garth Conboy
|
71
|
-
- George Bina
|
72
|
-
- Ionut-Maxim Margelatu
|
73
|
-
- Jessica Hekman
|
74
|
-
- Jostein Austvik Jacobsen
|
75
|
-
- Liza Daly
|
76
|
-
- Markus Gylling
|
77
|
-
- Martin Kraetke
|
78
|
-
- Masayoshi Takahashi
|
79
|
-
- Matt Garrish
|
80
|
-
- Merijn de Haen
|
81
|
-
- MURATA Makoto
|
82
|
-
- Paul Norton
|
83
|
-
- Peter Sorotokin
|
84
|
-
- Piotr Kula
|
85
|
-
- Romain Deltour
|
86
|
-
- Satoshi KOJIMA
|
87
|
-
- Stephan Kreutzer
|
88
|
-
- Steve Antoch
|
89
|
-
- Thiago de Oliveira Pereira
|
90
|
-
- Thomas Ledoux
|
91
|
-
- Tobias Fischer
|
92
|
-
- Tomohiko Hayashi
|
93
|
-
- Tzviya Siegman
|
94
|
-
- Vincent Gros
|
95
|
-
- Woongyoung Park
|
96
|
-
|
97
|
-
|
98
|
-
Most of the EPUBCheck functionality comes from the schema validation tool Jing
|
99
|
-
and schemas that were developed by IDPF and DAISY. Initial EPUBCheck development
|
100
|
-
was largely done at Adobe Systems. EPUBCheck 4.0 was largely developed by
|
101
|
-
DAISY and Barnes & Noble.
|