1 |
2008-03-03 Wakaba <wakaba@suika.fam.cx> |
2 |
|
3 |
* HTML.pm.src (_tokenize_attempt_to_consume_an_entity): Checkpoints |
4 |
are set. Cases that are unlikely reached are noted as so. |
5 |
|
6 |
2008-03-03 Wakaba <wakaba@suika.fam.cx> |
7 |
|
8 |
* HTML.pm.src: Checkpoints for debugging are added. |
9 |
|
10 |
* mkhtmlparser.pl: Support for |!!!cp| syntax. |
11 |
|
12 |
2008-03-03 Wakaba <wakaba@suika.fam.cx> |
13 |
|
14 |
* HTML.pm.src, mkhtmlparser.pl: s/_input_character/_char/g |
15 |
for simplicity. |
16 |
|
17 |
2008-03-03 Wakaba <wakaba@suika.fam.cx> |
18 |
|
19 |
* HTML.pm.src: Flag name changed: s/correct/force-quirks/g (HTML5 |
20 |
revision 1307). |
21 |
|
22 |
2008-03-03 Wakaba <wakaba@suika.fam.cx> |
23 |
|
24 |
* HTML.pm.src (_get_next_token): Where the /incorrect/ flag |
25 |
is set are changed (HTML5 revision 1305). |
26 |
|
27 |
2008-03-02 Wakaba <wakaba@suika.fam.cx> |
28 |
|
29 |
* HTML.pm.src: Raise a parse error for |<span ===>| (HTML5 revision |
30 |
1292). Entities are not parsed in comment-like part in RCDATA |
31 |
elements (HTML5 revision 1294). Allow bare & at the end |
32 |
of attribute value literals (HTML5 revision 1296). More |
33 |
quirks mode doctypes (HTML5 revision 1302). Requires spaces |
34 |
between attributes and ban attribute names or unquoted |
35 |
attribute values containing single or double quotes (HTML5 |
36 |
revision 1303). |
37 |
|
38 |
2008-03-02 Wakaba <wakaba@suika.fam.cx> |
39 |
|
40 |
* ContentChecker.pm: Typo fixed. Don't raise "character encoding" |
41 |
and related errors unless it is an HTML document (though the spec |
42 |
is unclear on whether it is applied to XHTML document). |
43 |
|
44 |
* HTML.pm (%HTMLAttrStatus): WF2 repetition model attributes |
45 |
are added. |
46 |
|
47 |
2008-03-02 Wakaba <wakaba@suika.fam.cx> |
48 |
|
49 |
* HTML.pm.src: s/local_name/manakai_local_name/g. |
50 |
|
51 |
2008-03-01 Wakaba <wakaba@suika.fam.cx> |
52 |
|
53 |
* _NamedEntityList.pm: Updated (HTML5 revision 1286). |
54 |
|
55 |
* HTML.pm.src: |charset| in |content| attribute is |
56 |
case-insensitive (HTML5 revision 1270). |
57 |
|
58 |
2008-02-26 Wakaba <wakaba@suika.fam.cx> |
59 |
|
60 |
* ContentChecker.pm: New status constants are added. |
61 |
($ElementDefault): |status| added. |
62 |
(check_element): Err for non-standard or deprecated elements. |
63 |
(_attr_status_info): For non-standard or deprecated attributes. |
64 |
|
65 |
2008-02-24 Wakaba <wakaba@suika.fam.cx> |
66 |
|
67 |
* ContentChecker.pm (_attr_status_info): New internal method. |
68 |
|
69 |
2008-02-24 Wakaba <wakaba@suika.fam.cx> |
70 |
|
71 |
* ContentChecker.pm (check_element): Element standardized |
72 |
status information is now dispatched. |
73 |
|
74 |
2008-02-24 Wakaba <wakaba@suika.fam.cx> |
75 |
|
76 |
* ContentChecker.pm (check_element): Fix |del|-and-significant |
77 |
problem by adding some more arguments. |
78 |
|
79 |
2008-02-24 Wakaba <wakaba@suika.fam.cx> |
80 |
|
81 |
* ContentChecker.pm (check_element): Use context of |
82 |
container-for-the-purpose-of-content-model element (not transparent |
83 |
element) for |check_child_element| calling and significant |
84 |
text flag marking. This reintroduces |<del>|-and-significant |
85 |
problem again. |
86 |
|
87 |
2008-02-24 Wakaba <wakaba@suika.fam.cx> |
88 |
|
89 |
* ContentChecker.pm (check_element): Make semi-transparent |
90 |
elements ignored for the purpose of phase changes in |
91 |
content model checking. |
92 |
|
93 |
2008-02-23 Wakaba <wakaba@suika.fam.cx> |
94 |
|
95 |
* ContentChecker.pm (check_element): In-element state |
96 |
was not properly managed for transparent cases. |
97 |
|
98 |
2008-02-23 Wakaba <wakaba@suika.fam.cx> |
99 |
|
100 |
* ContentChecker.pm (check_element): Support for |video| |
101 |
and |audio| as semi-transparent elements. |
102 |
|
103 |
2008-02-23 Wakaba <wakaba@suika.fam.cx> |
104 |
|
105 |
* ContentChecker.pm ($HTMLSemiTransparentElements): New. |
106 |
(check_element): s/minuses/minus_elements/, s/pluses/plus_elements/. |
107 |
Support for |html:object| as a semi-transparent element. |
108 |
|
109 |
2008-02-23 Wakaba <wakaba@suika.fam.cx> |
110 |
|
111 |
* ContentChecker.pm (check_element): The way to traverse |
112 |
the tree is entirely revised to make it easier to track |
113 |
the state of ancestors/descendants. As a result of this |
114 |
revision (which rewrites almost all of Whatpm::ContentChecker::HTML), |
115 |
support for content model checking for HTML elements |figure|, |
116 |
|object|, |video|, and |audio| and checking for XML elements (and |
117 |
some XMLNS checkings) are dropped for now. They will be |
118 |
reimplemented in due cource. |
119 |
|
120 |
2008-02-17 Wakaba <wakaba@suika.fam.cx> |
121 |
|
122 |
* HTML.pm.src: |>| in public or system literal closes the DOCTYPE |
123 |
token (HTML5 revision 1225). |
124 |
|
125 |
2008-02-17 Wakaba <wakaba@suika.fam.cx> |
126 |
|
127 |
* ContentChecker.pm ({unsupported_level}): New value. |
128 |
|
129 |
* HTML.pm.src: Save whether |meta| |content| attribute |
130 |
contains character references or not. |
131 |
|
132 |
2008-02-17 Wakaba <wakaba@suika.fam.cx> |
133 |
|
134 |
* ContentChecker.pm (_get_children): (Incompleted) attempt to |
135 |
imlement significant content checking for contents |
136 |
with |del| elements. |
137 |
|
138 |
2008-02-17 Wakaba <wakaba@suika.fam.cx> |
139 |
|
140 |
* ContenteChecker.pm ($HTMLTransparentElements): More |
141 |
elements are added. |
142 |
(_get_children): HTML |object| elements are now semi-transparent. |
143 |
|
144 |
* NanoDOM.pm (manakai_html, manakai_head): New methods. |
145 |
|
146 |
2008-02-16 Wakaba <wakaba@suika.fam.cx> |
147 |
|
148 |
* CacheManifest.pm: HTML5 revision 1211 implemented. |
149 |
|
150 |
* CacheManifest.pod: Updated. |
151 |
|
152 |
2008-02-10 Wakaba <wakaba@suika.fam.cx> |
153 |
|
154 |
* ContentChecker.pm (check_document, check_element): Support |
155 |
for second argument ($onsubdoc). |
156 |
(_get_css_parser): Removed (now it is part of WDCC). |
157 |
|
158 |
2008-02-09 Wakaba <wakaba@suika.fam.cx> |
159 |
|
160 |
* ContentChecker.pm (_get_css_parser): New. |
161 |
|
162 |
2007-11-25 Wakaba <wakaba@suika.fam.cx> |
163 |
|
164 |
* ContentChecker.pm ($AnyChecker): Old way to add child elements |
165 |
for checking had been used. |
166 |
|
167 |
2007-11-25 Wakaba <wakaba@suika.fam.cx> |
168 |
|
169 |
* ContentChecker.pm (check_element): New todo item type |descendant|. |
170 |
|
171 |
2007-11-23 Wakaba <wakaba@suika.fam.cx> |
172 |
|
173 |
* IMTChecker.pm: Revised to raise errors and warnings as (poorly) |
174 |
specced in RFC 2046 and RFC 4288. |
175 |
(application/atom+xml): Definition added. |
176 |
|
177 |
2007-11-23 Wakaba <wakaba@suika.fam.cx> |
178 |
|
179 |
* URIChecker.pm: Make RFC 3986 should-level errors |
180 |
warnings (rather than SHOULD-level errors). |
181 |
|
182 |
2007-11-23 Wakaba <wakaba@suika.fam.cx> |
183 |
|
184 |
* NanoDOM.pm (get_user_data, set_user_data): New methods. |
185 |
|
186 |
* HTML.pm.src: A flag for character references in attribute |
187 |
values are added. Set |manakai_has_reference| user data |
188 |
to |charset| attribute. |
189 |
|
190 |
2007-11-23 Wakaba <wakaba@suika.fam.cx> |
191 |
|
192 |
* NanoDOM.pm (input_encoding, manakai_charset, manakai_has_bom): New |
193 |
attributes. |
194 |
|
195 |
* ContentChecker.pm (check_document): Warn if charset requirements |
196 |
cannot be tested. |
197 |
|
198 |
2007-11-19 Wakaba <wakaba@suika.fam.cx> |
199 |
|
200 |
* HTML.pm.src (parse_byte_string): Detect charset |
201 |
by universalchardet if charset parameter is not specified. |
202 |
|
203 |
* Makefile (Charset-all, Charset-clean): New rules. |
204 |
|
205 |
2007-11-18 Wakaba <wakaba@suika.fam.cx> |
206 |
|
207 |
* ContentChecker.pm (check_document): Check the existence |
208 |
of character encoding declaration and selection of encoding |
209 |
for HTML document. |
210 |
|
211 |
2007-11-18 Wakaba <wakaba@suika.fam.cx> |
212 |
|
213 |
* ContentType.pm (get_sniffed_type): Return also the official |
214 |
type in list context. |
215 |
|
216 |
2007-11-18 Wakaba <wakaba@suika.fam.cx> |
217 |
|
218 |
* ContentType.pm: Sniffing with leading white space |
219 |
ignoring (HTML5 revisions 1013 and 1016). |
220 |
|
221 |
2007-11-18 Wakaba <wakaba@suika.fam.cx> |
222 |
|
223 |
* ContentType.pm: HTML5 revision 1013 changes, except for leading |
224 |
white spaces, are implemented. |
225 |
|
226 |
2007-11-11 Wakaba <wakaba@suika.fam.cx> |
227 |
|
228 |
* HTML.pm.src (parse_char_string): Set |inner_encoding| |
229 |
attribute if possible. |
230 |
|
231 |
2007-11-11 Wakaba <wakaba@suika.fam.cx> |
232 |
|
233 |
* HTML.pm.src (parse_byte_string): New method. |
234 |
(parse_char_string): New alias for |parse_string|. |
235 |
(main phase): Invoking "change the encoding" algorithm if desired. |
236 |
|
237 |
* HTML.pod: Updated. |
238 |
|
239 |
2007-11-11 Wakaba <wakaba@suika.fam.cx> |
240 |
|
241 |
* HTML.pod (get_inner_html): Removed. |
242 |
|
243 |
* Makefile (HTML-all, HTML-clean): New. |
244 |
|
245 |
2007-11-11 Wakaba <wakaba@suika.fam.cx> |
246 |
|
247 |
* HTML.pm.src (get_inner_html): Removed (moved to HTML/Serializer.pm). |
248 |
|
249 |
2007-11-08 Wakaba <wakaba@suika.fam.cx> |
250 |
|
251 |
* mklinktypelist.pl: s/noreferer/noreferrer/ (HTML5 revision 1132). |
252 |
|
253 |
2007-11-04 Wakaba <wakaba@suika.fam.cx> |
254 |
|
255 |
* Makefile: |CacheManifest.html| is added. |
256 |
|
257 |
* CacheManifest.pod: New file. |
258 |
|
259 |
2007-11-04 Wakaba <wakaba@suika.fam.cx> |
260 |
|
261 |
* CacheManifest.pm: New module. |
262 |
|
263 |
2007-11-04 Wakaba <wakaba@suika.fam.cx> |
264 |
|
265 |
* HTML.pm.src: Support for application cache selection algorithm |
266 |
callback. |
267 |
|
268 |
2007-11-04 Wakaba <wakaba@suika.fam.cx> |
269 |
|
270 |
* mklinktypelist.pl: Support for rel=noreferer (HTML5 revision 1118). |
271 |
|
272 |
2007-10-17 Wakaba <wakaba@suika.fam.cx> |
273 |
|
274 |
* Makefile (clean): New rule. |
275 |
|
276 |
* NanoDOM.pm (public_id, system_id): New attributes. |
277 |
|
278 |
2007-10-17 Wakaba <wakaba@suika.fam.cx> |
279 |
|
280 |
* Makefile (CSS-all, CSS-clean, clean): New rules. |
281 |
|
282 |
2007-10-14 Wakaba <wakaba@suika.fam.cx> |
283 |
|
284 |
* ContentChecker.pm (check_document): Support for |
285 |
new |is_xml_root| flag. |
286 |
(check_element): Support for new |pluses| state. |
287 |
(_add_pluses): New method. |
288 |
(_remove_minuses): Support for new |minus| item. |
289 |
|
290 |
2007-09-24 Wakaba <wakaba@suika.fam.cx> |
291 |
|
292 |
* ContentChecker.pm: Raise specific error for invalid |
293 |
root element. |
294 |
|
295 |
2007-09-24 Wakaba <wakaba@suika.fam.cx> |
296 |
|
297 |
* ContentChecker.pm: Set level values for later uses. |
298 |
|
299 |
2007-09-09 Wakaba <wakaba@suika.fam.cx> |
300 |
|
301 |
* ContentChecker.pm: Support for language tag validation. |
302 |
|
303 |
2007-09-09 Wakaba <wakaba@suika.fam.cx> |
304 |
|
305 |
* LangTag.pm (check_rfc3066_language_tag): New method. |
306 |
|
307 |
2007-09-09 Wakaba <wakaba@suika.fam.cx> |
308 |
|
309 |
* LangTag.pm: New module. |
310 |
|
311 |
2007-09-04 Wakaba <wakaba@suika.fam.cx> |
312 |
|
313 |
* HTML.pm.src: Some error types were wrong. |
314 |
|
315 |
2007-08-17 Wakaba <wakaba@suika.fam.cx> |
316 |
|
317 |
* CSS/: New directory. |
318 |
|
319 |
2007-08-17 Wakaba <wakaba@suika.fam.cx> |
320 |
|
321 |
* ContentChecker.pm (_check_get_children): Support |
322 |
for |noscript| in |head|. |
323 |
|
324 |
2007-08-12 Wakaba <wakaba@suika.fam.cx> |
325 |
|
326 |
* URI/: New directory. |
327 |
|
328 |
2007-08-11 Wakaba <wakaba@suika.fam.cx> |
329 |
|
330 |
* HTML.pm.src: Tokenizer's states are now represented in |
331 |
number. |
332 |
|
333 |
2007-08-11 Wakaba <wakaba@suika.fam.cx> |
334 |
|
335 |
* HTML.pm.src: |or|s for insertion modes are replaced |
336 |
by |&|s. |
337 |
|
338 |
2007-08-11 Wakaba <wakaba@suika.fam.cx> |
339 |
|
340 |
* HTML.pm.src: Token types are now represented in number. |
341 |
|
342 |
2007-08-11 Wakaba <wakaba@suika.fam.cx> |
343 |
|
344 |
* ContentType.pm (SEE ALSO): Updated. |
345 |
|
346 |
* HTML.pm.src: Insertion modes are now represented in number. |
347 |
|
348 |
2007-08-11 Wakaba <wakaba@suika.fam.cx> |
349 |
|
350 |
* ContentType.pm: Sniffing for bitmap images (HTML5 revision |
351 |
999) is implemented. |
352 |
|
353 |
2007-08-08 Wakaba <wakaba@suika.fam.cx> |
354 |
|
355 |
* ContentType.pm: Sniffing for |<script| (HTML5 revision |
356 |
983) is implemented. |
357 |
|
358 |
2007-08-06 Wakaba <wakaba@suika.fam.cx> |
359 |
|
360 |
* ContentChecker.pod: New documentation. |
361 |
|
362 |
* Makefile: A rule for |ContentChecker.html| is added. |
363 |
|
364 |
* ContentChecker.pm: A pod "LICENSE" section is added. |
365 |
|
366 |
* NanoDOM.pm ($VERSION): New variable. |
367 |
|
368 |
2007-08-05 Wakaba <wakaba@suika.fam.cx> |
369 |
|
370 |
* H2H.pm: |b|, |i|, and |sub| are added to the |
371 |
list of allowed HTML elements. |
372 |
|
373 |
2007-08-05 Wakaba <wakaba@suika.fam.cx> |
374 |
|
375 |
* H2H.pm: |samp| is added to the list of allowed |
376 |
HTML elements. |
377 |
|
378 |
* URIChecker.pm (check_iri): New. |
379 |
(check_iri_reference): Error type for IRI reference |
380 |
syntax error is changed. |
381 |
|
382 |
2007-08-04 Wakaba <wakaba@suika.fam.cx> |
383 |
|
384 |
* ContentChecker.pm: Reference to the |Whatpm::ContentChecker::Atom| |
385 |
is added. |
386 |
(check_document): Load appropriate module before validation. |
387 |
|
388 |
2007-08-04 Wakaba <wakaba@suika.fam.cx> |
389 |
|
390 |
* ContentChecker/: New directory. |
391 |
|
392 |
2007-08-04 Wakaba <wakaba@suika.fam.cx> |
393 |
|
394 |
* ContentChecker.pm: HTML |time| element is implemented. |
395 |
|
396 |
* HTMLTable.pm: Comments are updated as HTML5 is revised. |
397 |
|
398 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
399 |
|
400 |
* ContentChecker.pm (check_document): Return value |
401 |
even if no document element is found. |
402 |
|
403 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
404 |
|
405 |
* HTML.pm.src: |$in_body| is no longer a function. |
406 |
|
407 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
408 |
|
409 |
* HTML.pm.src: The |$in_body| code has been moved down. |
410 |
|
411 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
412 |
|
413 |
* HTML.pm.src: The "trailing end" insertion mode |
414 |
is split into "after html body" and "after html frameset" |
415 |
insertion modes. Their codes are merged with "after body" |
416 |
and "after frameset" codes. |$previous_insertion_mode| |
417 |
has been removed. "after frameset" code is |
418 |
merged with "in frameset" code. |
419 |
|
420 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
421 |
|
422 |
* HTML.pm.src: The "before head" insertion mode is |
423 |
merged with the "in head" insertion mode. |
424 |
|
425 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
426 |
|
427 |
* HTML.pm.src: Cases in "in head" insertion mode are |
428 |
reorganized. |
429 |
|
430 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
431 |
|
432 |
* HTML.pm.src: Some cases in "in table" insertion mode |
433 |
are merged. |
434 |
|
435 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
436 |
|
437 |
* HTML.pm.src: The "in row" insertion mode is merged |
438 |
with "in table" insertion mode. |
439 |
|
440 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
441 |
|
442 |
* HTML.pm.src: The "in table" and "in table body" insertion |
443 |
modes are merged. |
444 |
|
445 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
446 |
|
447 |
* HTML.pm.src: There is no "in table head" or "in table foot" |
448 |
insertion mode! |
449 |
|
450 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
451 |
|
452 |
* HTML.pm.src: |<noframes>| "in frameset" and "in noframes" |
453 |
now directly invoke the handler. |
454 |
|
455 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
456 |
|
457 |
* HTML.pm.src: Codes for "in cell" insertion mode |
458 |
is merged to the "in body" insertion mode code. |
459 |
|
460 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
461 |
|
462 |
* HTML.pm.src: Codes for "in body" and "in caption" |
463 |
insertion modes are merged. |
464 |
|
465 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
466 |
|
467 |
* HTML.pm.src: Two |!!!next-token|s were missing. |
468 |
|
469 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
470 |
|
471 |
* HTML.pm.src: Use numeric constant for |{content_mode}| |
472 |
instead of string constant for |{content_model_flag}|. |
473 |
|
474 |
2007-07-21 Wakaba <wakaba@suika.fam.cx> |
475 |
|
476 |
* HTML.pm.src: Add the name of the attribute |
477 |
to the "duplicate attribute" error. |
478 |
|
479 |
2007-07-17 Wakaba <wakaba@suika.fam.cx> |
480 |
|
481 |
* ContentChecker.pm: Return the |class| node list. |
482 |
|
483 |
2007-07-17 Wakaba <wakaba@suika.fam.cx> |
484 |
|
485 |
* ContentChecker.pm: Return the |id| node list. |
486 |
|
487 |
* HTML.pm.src: A typo is fixed. |
488 |
|
489 |
2007-07-16 Wakaba <wakaba@suika.fam.cx> |
490 |
|
491 |
* ContentChecker.pm: Drop wrong |level => 'error'| specification |
492 |
from "in HTML:xml:lang" error. Character position |
493 |
is now the last part of the error type in the URI error |
494 |
description. Report "unsupported" status for language |
495 |
tags, media queries, script codes, and style sheets. |
496 |
|
497 |
2007-07-16 Wakaba <wakaba@suika.fam.cx> |
498 |
|
499 |
* ContentChecker.pm: Report error if |xml:lang| |
500 |
in HTML, |lang| in XML, |xmlns| in XML, and |meta| |charset| |
501 |
in XML. |
502 |
|
503 |
* NanoDOM.pm (Attr.owner_document): New attribute. |
504 |
|
505 |
2007-07-16 Wakaba <wakaba@suika.fam.cx> |
506 |
|
507 |
* HTML.pm.src: The character immediately following |
508 |
a bare |hcro| was discarded. Fix handling of |
509 |
entity references in attribute values. |
510 |
|
511 |
2007-07-16 Wakaba <wakaba@suika.fam.cx> |
512 |
|
513 |
* HTML.pm.src (main and trailin end phases): Token |
514 |
types |DOCTYPE|, |comment|, |end-of-file|, and |<html>| are |
515 |
factored out. Error types |in html:#DOCTYPE| |
516 |
and |after html:#DOCTYPE| are merged |
517 |
into |DOCTYPE in the middle|. |</frameset>| |
518 |
in fragment parsing mode changed the |
519 |
insertion mode. |
520 |
|
521 |
2007-07-16 Wakaba <wakaba@suika.fam.cx> |
522 |
|
523 |
* HTML.pm.src: |$phase| has been removed; The |trailing end| |
524 |
phase is now an insertion mode. Treatments for white |
525 |
space character tokens were incorrect for some |
526 |
insertion modes. An old |meta| case was not removed. |
527 |
|
528 |
2007-07-16 Wakaba <wakaba@suika.fam.cx> |
529 |
|
530 |
* HTML.pm.src: |meta| charset declaration extraction |
531 |
implemented (but changing the encoding is not yet:-). |
532 |
|
533 |
2007-07-15 Wakaba <wakaba@suika.fam.cx> |
534 |
|
535 |
* Charset/: New directory. |
536 |
|
537 |
2007-07-15 Wakaba <wakaba@suika.fam.cx> |
538 |
|
539 |
* H2H.pm: New Perl module (created from |
540 |
manakai's H2H.dis). |
541 |
|
542 |
2007-07-15 Wakaba <wakaba@suika.fam.cx> |
543 |
|
544 |
* XMLSerializer.pm: New Perl module (created from |
545 |
manakai's SimpleLS.dis). |
546 |
|
547 |
2007-07-07 Wakaba <wakaba@suika.fam.cx> |
548 |
|
549 |
* HTML.pm.src: |<!---x-->| was not processed correctly. |
550 |
|
551 |
2007-07-01 Wakaba <wakaba@suika.fam.cx> |
552 |
|
553 |
* HTML.pm.src: Report correct error message |
554 |
for |<body></div></body>|. |
555 |
|
556 |
2007-07-01 Wakaba <wakaba@suika.fam.cx> |
557 |
|
558 |
* HTMLTable.pm: An error description was incorrect. |
559 |
|
560 |
2007-06-30 Wakaba <wakaba@suika.fam.cx> |
561 |
|
562 |
* ContentChecker.pm: Return |{term}| list. |
563 |
|
564 |
2007-06-30 Wakaba <wakaba@suika.fam.cx> |
565 |
|
566 |
* HTML.pm.src: HTML5 revisions 961-966 (</p>, </br>, |
567 |
nested <nobr>, implied </tbody>, </tfoot>, and </thead>, |
568 |
and <title> outside of head). |
569 |
|
570 |
2007-06-30 Wakaba <wakaba@suika.fam.cx> |
571 |
|
572 |
* IMTChecker.pm: Report warning for unregistered |
573 |
and private types/subtypes. |
574 |
|
575 |
* ContentChecker.pm, HTML.pm.src, IMTChecker.pm, |
576 |
URIChecker.pm, HTMLTable.pm: Error messages are now |
577 |
consistent; they are all listed in |
578 |
<http://suika.fam.cx/gate/2005/sw/Whatpm%20Error%20Types>. |
579 |
|
580 |
2007-06-25 Wakaba <wakaba@suika.fam.cx> |
581 |
|
582 |
* ContentChecker.pm: |<img ismap>| not in |<a></a>| |
583 |
is now erred. |<datalist>| is implemented. |
584 |
Attribute checker for |<command>| and |<menu>| are |
585 |
added. Support for |contextmenu| global attribute |
586 |
is added. |
587 |
|
588 |
2007-06-25 Wakaba <wakaba@suika.fam.cx> |
589 |
|
590 |
* HTML.pm.src (_reset_insertion_mode): Interpretation |
591 |
of Step 3 has been changed. |
592 |
|
593 |
2007-06-25 Wakaba <wakaba@suika.fam.cx> |
594 |
|
595 |
* HTML.pm.src: Late |<html>| parse error is implemented. |
596 |
|
597 |
2007-06-24 Wakaba <wakaba@suika.fam.cx> |
598 |
|
599 |
* URIChecker.pm (check_iri_reference): A |decode| method name was |
600 |
incorrect. |
601 |
|
602 |
* ContentChecker.pm: Support for the |footer| element. |
603 |
Check URI syntax for space-separated URI attributes. |
604 |
Support for the |tabindex| attribute. Support |
605 |
for |datetime| attribute. |
606 |
|
607 |
2007-06-24 Wakaba <wakaba@suika.fam.cx> |
608 |
|
609 |
* HTML.pm.src: HTML5 revision 1.144 (
) and 1.145 (invalid |
610 |
character references). HTML5 revision 1.146 (white space |
611 |
characters before root start tag). HTML5 revision |
612 |
1.148 (named character references in attribute values). |
613 |
HTML5 revision 1.152 (<plaintext>.innerHTML get). |
614 |
|
615 |
2007-06-24 Wakaba <wakaba@suika.fam.cx> |
616 |
|
617 |
* HTML.pm.src: HTML5 revisions 1.142 and 1.143 (<noscript> |
618 |
in <head>). |
619 |
|
620 |
2007-06-24 Wakaba <wakaba@suika.fam.cx> |
621 |
|
622 |
* HTML.pm.src: HTML5 revision 935 (<base>, <link>, <meta> |
623 |
in body). |
624 |
|
625 |
* ContentChecker.pm: HTML5 revision 938 (scoped=""). |
626 |
|
627 |
2007-06-24 Wakaba <wakaba@suika.fam.cx> |
628 |
|
629 |
* HTML.pm.src: HTML5 revision 923 (matching end tag in CDATA |
630 |
or RCDATA in fragment parsing mode). HTML5 revision |
631 |
924 (<!--> and <!--->). HTML5 revision 926 (hn in hn). |
632 |
|
633 |
2007-06-23 Wakaba <wakaba@suika.fam.cx> |
634 |
|
635 |
* HTML.pm.src (get_inner_html): HTML5 revision 922 (inner_html |
636 |
for <pre> and <textarea>). |
637 |
|
638 |
2007-06-23 Wakaba <wakaba@suika.fam.cx> |
639 |
|
640 |
* HTML.pm.src: HTML5 revision 920 (<isindex>). |
641 |
|
642 |
2007-06-23 Wakaba <wakaba@suika.fam.cx> |
643 |
|
644 |
* HTML.pm.src: HTML5 revision 918 (</head>, </body>, </html>). |
645 |
|
646 |
2007-06-23 Wakaba <wakaba@suika.fam.cx> |
647 |
|
648 |
* HTML.pm.src: HTML5 revision 916 (</body>). |
649 |
HTML5 revision 917 (conforming bare &). |
650 |
|
651 |
2007-06-23 Wakaba <wakaba@suika.fam.cx> |
652 |
|
653 |
* NanoDOM.pm (manakai_is_html): Setting to false did not work. |
654 |
|
655 |
* HTML.pm.src: HTML5 revision 914 (</ in CDATA, RCDATA). |
656 |
HTML5 revision 915 (<nobr>). |
657 |
|
658 |
2007-06-23 Wakaba <wakaba@suika.fam.cx> |
659 |
|
660 |
* HTML.pm.src: HTML5 revisions 908, 909, 912, and 913 (quirks mode). |
661 |
|
662 |
* NanoDOM.pm (manakai_is_html, manakai_compat_mode, compat_mode): |
663 |
New attributes. |
664 |
|
665 |
2007-06-23 Wakaba <wakaba@suika.fam.cx> |
666 |
|
667 |
* HTML.pm.src: HTML5 revisions 900, 901, 902, and 911 (< |
668 |
in tags). |
669 |
|
670 |
2007-06-23 Wakaba <wakaba@suika.fam.cx> |
671 |
|
672 |
* .cvsignore: |Entities.html| is added. |
673 |
|
674 |
* HTML.pm.src: |$entity_char| is removed and |
675 |
requires |Whatpm::_NamedEntityList| instead. |
676 |
HTML5 revision 898 (refc), except that lack of refc |
677 |
is parse error. |
678 |
|
679 |
* mkentitylist.pl: New script. |
680 |
|
681 |
* Makefile (all): |_NamedEntityList.pm| is added. |
682 |
(_NamedEntityList.pm, Entities.html): New rules. |
683 |
|
684 |
2007-06-23 Wakaba <wakaba@suika.fam.cx> |
685 |
|
686 |
* HTML.pm.src: Parse errors immediately after U+000D |
687 |
were ignored and U+000D immediately following another |
688 |
U+000D was not converted to U+000A. |
689 |
|
690 |
2007-06-23 Wakaba <wakaba@suika.fam.cx> |
691 |
|
692 |
* HTML.pm.src (set_inner_html): HTML5 revision 892 (adopt |
693 |
nodes before appended). Parser was not ready for NULL |
694 |
parse error and escape flag. |
695 |
|
696 |
* NanoDOM.pm (adopt_node): New. |
697 |
|
698 |
2007-06-23 Wakaba <wakaba@suika.fam.cx> |
699 |
|
700 |
* HTML.pm.src: HTML5 revision 886 (insane comment in |
701 |
CDATA and RCDATA). Note that current implementation |
702 |
is simply repeating what the spec says and it is maybe not |
703 |
a best way to do it. |
704 |
|
705 |
2007-06-23 Wakaba <wakaba@suika.fam.cx> |
706 |
|
707 |
* HTML.pm.src: HTML5 revision 884 (</form> don't close |
708 |
the form element if a descendant element without implied end tag has |
709 |
still been open). |
710 |
|
711 |
2007-06-23 Wakaba <wakaba@suika.fam.cx> |
712 |
|
713 |
* ContentChecker.pm: HTML5 revision 881 (Make |id| attribute with |
714 |
space characters non-conforming). |
715 |
|
716 |
2007-06-23 Wakaba <wakaba@suika.fam.cx> |
717 |
|
718 |
* HTML.pm.src: An error message was incorrect. |
719 |
HTML5 revision 869 (C1 character references). |
720 |
|
721 |
2007-06-23 Wakaba <wakaba@suika.fam.cx> |
722 |
|
723 |
* HTML.pm.src: HTML5 revision 867 (a LF at the beginning of |
724 |
a |textarea| is removed). |
725 |
|
726 |
2007-06-05 Wakaba <wakaba@suika.fam.cx> |
727 |
|
728 |
* NanoDOM.pm (get_attribute_node_ns): New method. |
729 |
|
730 |
* ContentChecker.pm: |script| |async| and |defer| |
731 |
no longer require |src|. |async| MUST NOT be |
732 |
specified if |defer|. (HTML5 revision 858). |
733 |
|
734 |
2007-05-30 Wakaba <wakaba@suika.fam.cx> |
735 |
|
736 |
* HTML.pm.src: |<form><form>| went to inifinite loop. |
737 |
|
738 |
2007-05-27 Wakaba <wakaba@suika.fam.cx> |
739 |
|
740 |
* ContentChecker.pm (html): Set |is_root| (allowed |
741 |
as a document element) flag on. |
742 |
(new): Removed. |
743 |
(check_document): New method. |
744 |
|
745 |
2007-05-27 Wakaba <wakaba@suika.fam.cx> |
746 |
|
747 |
* ContentChecker.pm (thead, tfoot): Checker specifications |
748 |
were incorrect. |
749 |
|
750 |
2007-05-27 Wakaba <wakaba@suika.fam.cx> |
751 |
|
752 |
* ContentChecker.pm ($HTMLURIAttrChecker): Include |
753 |
error position in the |type| option of the error. |
754 |
|
755 |
* HTMLTable.pm (form_table): The |$onerror| parameter |
756 |
is now optional. Some bugs are fixed. |
757 |
|
758 |
2007-05-27 Wakaba <wakaba@suika.fam.cx> |
759 |
|
760 |
* HTMLTable.pm: New module. |
761 |
|
762 |
* ContentChecker.pm (table): Invoke table model error checker. |
763 |
|
764 |
* NanoDOM.pm (first_child, get_attribute_ns): New. |
765 |
|
766 |
2007-05-26 Wakaba <wakaba@suika.fam.cx> |
767 |
|
768 |
* ContentChecker.pm ($HTMLLinkTypesAttrChecker): New checker. |
769 |
(link/@rel, a/@rel, area/@rel): Use new checker. |
770 |
|
771 |
* Makefile (_LinkTypeList.pm, RelExtensions.html): New rules. |
772 |
|
773 |
* _LinkTypeList.pm: New file. |
774 |
|
775 |
* mklinktypelist.pl: New file. |
776 |
|
777 |
* .cvsignore: |RelExtensions.html| added. |
778 |
|
779 |
* NanoDOM.pm (child_nodes): Returns an empty array |
780 |
for non-child-containing node types. |
781 |
(text_content): New attribute. |
782 |
|
783 |
2007-05-26 Wakaba <wakaba@suika.fam.cx> |
784 |
|
785 |
* IMTChecker.pm: New module. |
786 |
|
787 |
* ContentChecker.pm ($HTMLIMTAttrChecker): Call IMTChecker |
788 |
to test parameter value validity. |
789 |
|
790 |
* HTML.pm.src ($style_start_tag): Attributes were |
791 |
discarded. |
792 |
|
793 |
2007-05-25 Wakaba <wakaba@suika.fam.cx> |
794 |
|
795 |
* ContentChecker.pm ($HTMLURIAttrChecker): Implemented. |
796 |
|
797 |
2007-05-25 Wakaba <wakaba@suika.fam.cx> |
798 |
|
799 |
* URIChecker.pm: All recommendations from RFC 3986 |
800 |
and RFC 3987 are listed (not all testable items are checked yet). |
801 |
|
802 |
2007-05-25 Wakaba <wakaba@suika.fam.cx> |
803 |
|
804 |
* URIChecker.pm: New module. |
805 |
|
806 |
2007-05-20 Wakaba <wakaba@suika.fam.cx> |
807 |
|
808 |
* ContentChecker.pm: Now most attributes are implemented |
809 |
or associated to some placeholder. |
810 |
($ElementDefault): Warn unknown attributes |
811 |
for unknown elements as "attribute not supported". |
812 |
($HTMLLanguageTagAttrChecker, $HTMLMQAttrChecker): New placeholders. |
813 |
($HTMLUsemapAttrChecker, $HTMLTargetAttrChecker): New checkers. |
814 |
(|a| attribute checker): Reimplemented. |
815 |
|
816 |
2007-05-20 Wakaba <wakaba@suika.fam.cx> |
817 |
|
818 |
* ContentChecker.pm ($HTMLEventHandlerAttrChecker): New placeholder. |
819 |
($HTMLAttrChecker): Event handler content attributes |
820 |
are added. |
821 |
(link, embed): Required attribute is now checked. |
822 |
(embed): Unknown local attributes are no longer warned. |
823 |
|
824 |
2007-05-20 Wakaba <wakaba@suika.fam.cx> |
825 |
|
826 |
* ContentChecker.pm ($HTMLSpaceURIsAttrChecker): New placeholder. |
827 |
($HTMLIMTAttrChecker): New checker. |
828 |
(link@rel, link@href, link@type, style@type, |
829 |
a@href, a@ping, a@ping, a@type, embed@src, embed@type, |
830 |
object@data, object@type, source@src, source@type, area@alt, |
831 |
area@shape, area@coords, area@href, |
832 |
area@ping, area@rel, area@type, script@src, |
833 |
script@defer, script@async, script@type): Checkers added. |
834 |
|
835 |
2007-05-20 Wakaba <wakaba@suika.fam.cx> |
836 |
|
837 |
* ContentChecker.pm: Descendant checking was incorrect. |
838 |
|
839 |
2007-05-19 Wakaba <wakaba@suika.fam.cx> |
840 |
|
841 |
* ContentChecker.pm: Support |xml:*| and |xmlns:*| |
842 |
attributes. Report an error if |Element.prefix| |
843 |
is |xmlns|. |
844 |
|
845 |
* NanoDOM.pm (prefix): New attribute. |
846 |
|
847 |
2007-05-19 Wakaba <wakaba@suika.fam.cx> |
848 |
|
849 |
* HTML.pm.src: In |main| phase, |in body| insertion |
850 |
mode, action for |<iframe>| was missing. |
851 |
|
852 |
2007-05-19 Wakaba <wakaba@suika.fam.cx> |
853 |
|
854 |
* ContentChecker.pm: Support for many of HTML5 elements. |
855 |
($GetHTMLNonNegativeIntegerAttrChecker): New. |
856 |
|
857 |
2007-05-19 Wakaba <wakaba@suika.fam.cx> |
858 |
|
859 |
* ContentChecker.pm: Support for most elements up to |progress|. |
860 |
($HTMLURIAttrChecker): Placeholder. |
861 |
($HTMLIntegerAttrChecker, $GetHTMLFloatingPointNumberAttrChecker): |
862 |
New. |
863 |
|
864 |
2007-05-19 Wakaba <wakaba@suika.fam.cx> |
865 |
|
866 |
* ContentChecker.pm: Attribute checkers |
867 |
for global attributes, |html|, |base|, |style|, and |meta|. |
868 |
|
869 |
* NanoDOM.pm (insert_before): Weaken reference |
870 |
to the parent node. |
871 |
(Attr::new): Set |owner_element| attribute. |
872 |
(namespace_uri, manakai_local_name): New attribute implementations. |
873 |
(owner_element): New attribute. |
874 |
|
875 |
2007-05-19 Wakaba <wakaba@suika.fam.cx> |
876 |
|
877 |
* ContentChecker.pm ($AttrChecker, $HTMLAttrChecker, |
878 |
$AnyChecker->{attr_checker}, $HTMLAttrsChecker, |
879 |
$Element->{$HTML_NS}->{''}): New. |
880 |
(check_element): Invoke attrs_checker for each element. |
881 |
|
882 |
2007-05-13 Wakaba <wakaba@suika.fam.cx> |
883 |
|
884 |
* ContentChecker.pm: Don't use |manakai_element_type_match|. |
885 |
|
886 |
2007-05-13 Wakaba <wakaba@suika.fam.cx> |
887 |
|
888 |
* ContentChecker.pm: Use hashs rather than lists for |
889 |
element type testings. |
890 |
|
891 |
2007-05-13 Wakaba <wakaba@suika.fam.cx> |
892 |
|
893 |
* ContentChecker.pm: Don't generate duplicate |
894 |
error when an element type is put in the "minus" list |
895 |
and the element type is not allowed explicitly in the particular |
896 |
element content model. |
897 |
(html:a checker): New checker. |
898 |
(html:details, html:datagrid): New checkers. |
899 |
(html:legend): New checker. |
900 |
|
901 |
2007-05-13 Wakaba <wakaba@suika.fam.cx> |
902 |
|
903 |
* ContentChecker.pm (html:li checker): Implemented. |
904 |
|
905 |
2007-05-13 Wakaba <wakaba@suika.fam.cx> |
906 |
|
907 |
* ContentChecker.pm ($HTMLInlineOrStriclyInlineChecker): New |
908 |
checker. |
909 |
(html:dd checker): New checker. |
910 |
(html:q, html:em, html:strong, html:small, |
911 |
html:m, html:dfn, html:code, html:samp, html:span): New checkers. |
912 |
|
913 |
2007-05-13 Wakaba <wakaba@suika.fam.cx> |
914 |
|
915 |
* ContentChecker.pm ($AnyChecker): Renamed |
916 |
from |$ElementDefault->{checker}|. |
917 |
($ElementDefault->{checker}): Throw an error that |
918 |
the element type is not supported by the checker. |
919 |
($HTMLMetadataElement): |html:base| was missing. |
920 |
($HTMLEmptyChecker): Don't throw an error |
921 |
for inter-element whitespace nodes. |
922 |
(html:html checker): Errors were not |
923 |
thrown even if |html:head| and/or |html:body| |
924 |
children were missing. |
925 |
(html:head checker): An error was not |
926 |
thrown if <meta charset> appered after other |
927 |
elements. |
928 |
|
929 |
2007-05-05 Wakaba <wakaba@suika.fam.cx> |
930 |
|
931 |
* ContentChecker.pm: |footer|, |video|, |audio|, |script|, |
932 |
and |noscript| elements are implemented. |
933 |
(new): New method. |
934 |
|
935 |
2007-05-04 Wakaba <wakaba@suika.fam.cx> |
936 |
|
937 |
* ContentChecker.pm: New module. |
938 |
|
939 |
2007-05-04 Wakaba <wakaba@suika.fam.cx> |
940 |
|
941 |
* NanoDOM.pm (manakai_parent_element, |
942 |
document_element, manakai_local_name, |
943 |
manakai_element_type_match): New method. |
944 |
|
945 |
2007-05-03 Wakaba <wakaba@suika.fam.cx> |
946 |
|
947 |
* HTML.pm.src: Replace decimal and hexadecimal numeric |
948 |
entities in C1 range using Windows-1252 mapping. Bare LF |
949 |
did not count as new line for error reporting. |
950 |
|
951 |
2007-05-02 Wakaba <wakaba@suika.fam.cx> |
952 |
|
953 |
* NanoDOM.pm (DOMImplementation): New class. |
954 |
(append_child): Weaken the |parent_node| reference. |
955 |
(create_element_ns, Element new): Set the |owner_document| |
956 |
reference. |
957 |
(implementation): New attribute. |
958 |
(owner_document, local_name, namespace_uri): New attributes. |
959 |
|
960 |
* HTML.pm.src (parse_string): Line and column numbers |
961 |
are now provided to error handler. |
962 |
(!!!parse-error): Short descriptions are added. |
963 |
(_construct_tree): Split into three methods; support |
964 |
for innerHTML mode. |
965 |
(set_inner_html): New method. |
966 |
|
967 |
2007-05-01 Wakaba <wakaba@suika.fam.cx> |
968 |
|
969 |
* NanoDOM.html: Documentation is added. |
970 |
|
971 |
* HTML.pod, ContentType.html: Documentation is revised. |
972 |
|
973 |
* .cvsignore: Pod2html temporary files are added. |
974 |
|
975 |
* Makefile: Make |NanoDOM.html|. |
976 |
|
977 |
2007-05-01 Wakaba <wakaba@suika.fam.cx> |
978 |
|
979 |
* HTML.pm.src (parse_string): New method. |
980 |
(get_inner_html): Renamed from |inner_html|. |
981 |
|
982 |
* Makefile: A rule for |HTML.html| is added. |
983 |
|
984 |
* HTML.pod: New documentation. |
985 |
|
986 |
2007-05-01 Wakaba <wakaba@suika.fam.cx> |
987 |
|
988 |
* NanoDOM.pm (last_child, previous_sibling): New attributes. |
989 |
(clone_node): Attribute nodes were not completely copied. |
990 |
|
991 |
* HTML.pm.src: Many bugs are fixed. |
992 |
|
993 |
2007-04-30 Wakaba <wakaba@suika.fam.cx> |
994 |
|
995 |
* HTML.pm.src: Some typos are fixed. |
996 |
|
997 |
2007-04-30 Wakaba <wakaba@suika.fam.cx> |
998 |
|
999 |
* mkhtmlparser.pl, Makefile: References to the |HTML-consume-entity.src| |
1000 |
are removed. |
1001 |
|
1002 |
* HTML.pm.src: Tokenizer's handling on named entities are rewritten. |
1003 |
|
1004 |
* HTML-consume-entity.src: Removed. |
1005 |
|
1006 |
2007-04-30 Wakaba <wakaba@suika.fam.cx> |
1007 |
|
1008 |
* HTML.pm.src: Tokenizer's handling on hexadecimal |
1009 |
numeric entities are rewritten. |
1010 |
|
1011 |
2007-04-30 Wakaba <wakaba@suika.fam.cx> |
1012 |
|
1013 |
* HTML.pm.src: Some tokenizer bugs are fixed. |
1014 |
|
1015 |
2007-04-30 Wakaba <wakaba@suika.fam.cx> |
1016 |
|
1017 |
* HTML.pm.src: The tree construction stage is implemented. |
1018 |
|
1019 |
* mkhtmlparser.pl: New macros are added. |
1020 |
|
1021 |
2007-04-28 Wakaba <wakaba@suika.fam.cx> |
1022 |
|
1023 |
* ContentType.pm: A note on bug in the specification |
1024 |
is removed since it's been now fixed. |
1025 |
|
1026 |
* .cvsignore: New file. |
1027 |
|
1028 |
2007-04-28 Wakaba <wakaba@suika.fam.cx> |
1029 |
|
1030 |
* HTML.pm.src, HTML-consume-entity.src: New files. |
1031 |
|
1032 |
* Makefile (HTML.pm): New rule. |
1033 |
|
1034 |
* mkhtmlparser.pl: New script. |
1035 |
|
1036 |
2007-04-25 Wakaba <wakaba@suika.fam.cx> |
1037 |
|
1038 |
* Makefile: New file. |
1039 |
|
1040 |
2007-04-24 Wakaba <wakaba@suika.fam.cx> |
1041 |
|
1042 |
* ContentType.pm: An error in pod is fixed. |
1043 |
|
1044 |
2007-04-24 Wakaba <wakaba@suika.fam.cx> |
1045 |
|
1046 |
* ContentType.pm: Documentation is added. |
1047 |
|
1048 |
2007-04-24 Wakaba <wakaba@suika.fam.cx> |
1049 |
|
1050 |
* ContentType.pm: New Perl module. |
1051 |
|
1052 |
* ChangeLog: New file. |
1053 |
|
1054 |
|