/[suikacvs]/markup/html/whatpm/Whatpm/ChangeLog
Suika

Contents of /markup/html/whatpm/Whatpm/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.289 - (show annotations) (download)
Wed Sep 10 10:27:07 2008 UTC (16 years, 10 months ago) by wakaba
Branch: MAIN
Changes since 1.288: +8 -0 lines
++ whatpm/Whatpm/ChangeLog	10 Sep 2008 10:25:19 -0000
2008-09-10  Wakaba  <wakaba@suika.fam.cx>

	* ContentChecker.pm: Support for charset-layer error levels.

	* HTML.pm.src: Don't specify |text| argument for the
	|chardecode:fallback| error, since it is not the encoding
	being used alternatively.

++ whatpm/Whatpm/Charset/ChangeLog	10 Sep 2008 10:26:52 -0000
2008-09-10  Wakaba  <wakaba@suika.fam.cx>

	* DecodeHandle.pm: Set error levels.

	* WebLatin1.pm: Support for |us-ascii| and |iso-8859-5|
	charsets (this module no longer for Latin1, but for Latin*
	encodings).

	* WebThai.pm: Support for |tis-620| charset.

1 2008-09-10 Wakaba <wakaba@suika.fam.cx>
2
3 * ContentChecker.pm: Support for charset-layer error levels.
4
5 * HTML.pm.src: Don't specify |text| argument for the
6 |chardecode:fallback| error, since it is not the encoding
7 being used alternatively.
8
9 2008-09-06 Wakaba <wakaba@suika.fam.cx>
10
11 * HTML.pm.src: Support for |XSLT-compat| (HTML5 revision 2141).
12
13 2008-08-31 Wakaba <wakaba@suika.fam.cx>
14
15 * CacheManifest.pm: Support for extensibility (HTML5 revision 2051).
16
17 2008-08-31 Wakaba <wakaba@suika.fam.cx>
18
19 * HTML.pm.src: Bug fix and sync with the spec with regard
20 to after after frameset insertion mode processing (HTML5
21 revision 1909). Note that the implementation was wrong
22 per the old spec before the r1909 changes.
23
24 2008-08-30 Wakaba <wakaba@suika.fam.cx>
25
26 * HTMLTable.pm: scope=auto algorithm fix synced with the
27 spec (HTML5 revision 2093).
28 ($process_row): Algorithm step numbers synced with the
29 spec (HTML5 revision 2092).
30
31 2008-08-30 Wakaba <wakaba@suika.fam.cx>
32
33 * HTMLTable.pm: Zs is not what we want; we want White_Space! (HTML5
34 revision 2094).
35
36 2008-08-30 Wakaba <wakaba@suika.fam.cx>
37
38 * ContentType.pm: Support for image/svg+xml (HTML5 revision 2096).
39
40 2008-08-30 Wakaba <wakaba@suika.fam.cx>
41
42 * HTML.pm.src: '"' and "'" at the end of attribute
43 name (after another attribute) now raise parse error (HTML5
44 revision 2123). Empty unquoted attribute values are no
45 longer allowed (HTML5 revision 2122).
46
47 2008-08-30 Wakaba <wakaba@suika.fam.cx>
48
49 * mkhtmlparser.pl: Support for MathML |definitionURL| attribute (HTML5
50 revision 2130).
51
52 2008-08-30 Wakaba <wakaba@suika.fam.cx>
53
54 * ContentChecker.pm: |xml:lang| attribute value must be same
55 as |lang| attribute value for HTML elements (HTML5 revision 2062
56 and so on).
57
58 2008-08-30 Wakaba <wakaba@suika.fam.cx>
59
60 * ContentChecker.pm: Error level definition for |xml_id_error|
61 was missing.
62
63 * URIChecker.pm: The end of the URL should be marked as the
64 error location for an empty path error. The position
65 between the userinfo and the port components should be
66 marked as the error location for an empty host error.
67
68 2008-08-30 Wakaba <wakaba@suika.fam.cx>
69
70 * URIChecker.pm: Set parameters representing where in the
71 value the error occurs for errors. Report unknown
72 address format error in warning level, since address
73 formats are rarely added. Path segments starting with "/.."
74 were misinterpreted as a dot-segment.
75
76 2008-08-30 Wakaba <wakaba@suika.fam.cx>
77
78 * URIChecker.pm (check_iri_reference): Requires
79 |Message::DOM::DOMImplementation|.
80
81 2008-08-29 Wakaba <wakaba@suika.fam.cx>
82
83 * IMTChecker.pm: Updated for the new error reporting architecture.
84
85 * ContentChecker.pm: Error levels for IMTs are added.
86
87 2008-08-17 Wakaba <wakaba@suika.fam.cx>
88
89 * H2H.pm (_shift_token): Support for unquoted HTML attribute
90 values.
91
92 2008-08-16 Wakaba <wakaba@suika.fam.cx>
93
94 * CacheManifest.pm: Support for new style of error
95 reports.
96
97 * HTML.pm.src: Set line=1, column=1 to the document node.
98
99 2008-08-16 Wakaba <wakaba@suika.fam.cx>
100
101 * ContentChecker.pm, RDFXML.pm: Pass {level} object to language tag
102 and URL checkers. Support for more error levels for bogus
103 langauge tag and URL "standards".
104
105 * LangTag.pm, URIChecker.pm: Support for new style error
106 level reporting.
107
108 2008-08-15 Wakaba <wakaba@suika.fam.cx>
109
110 * ContentChecker.pm: Support for RDF/XML error levels.
111
112 * HTMLTable.pm, RDFXML.pm: Support for new style of error level
113 specifying. Error types are revised.
114
115 2008-08-15 Wakaba <wakaba@suika.fam.cx>
116
117 * ContentChecker.pm: All error reporting method calls are
118 renewed.
119
120 2008-08-15 Wakaba <wakaba@suika.fam.cx>
121
122 * HTML.pm.src: All error type names and "text" parameters
123 are revised. Use new style for "level" specification.
124
125 * mkhtmlparser.pl: Use new style for "level" specification.
126
127 2008-08-03 Wakaba <wakaba@suika.fam.cx>
128
129 * WebIDL.pm (parse_char_string): Simplified error
130 reporting process for broken ignored valuetype definition.
131 (Valuetype idl_text): Support for special "DOMString" name.
132
133 2008-08-03 Wakaba <wakaba@suika.fam.cx>
134
135 * WebIDL.pm ($get_scoped_name): Append "::::" if the last
136 terminal of the ScopedName is "DOMString", such that whether
137 the last part of the scoped name is "DOMString" or "_DOMString"
138 later. It is necessary to determine whether a |typedef|
139 definition should be ignored or not.
140 (parse_char_string): Unescape the identifier of
141 exception members.
142 ($resolve): Return undef for builtin types and sequence<T>
143 types (we might not have to do this, however...).
144 (check): Support checking for Exceptions, Valuetypes,
145 and Typedefs.
146 ($serialize_type): Support for "DOMString::::" syntax.
147 (Typedef idl_text): Output Type as "DOMString" if it
148 is really "DOMString" (i.e. its internal representation
149 is "::DOMString::").
150
151 2008-08-03 Wakaba <wakaba@suika.fam.cx>
152
153 * WebIDL.pm ($resolve): New code, based on resolve code
154 for constant types in the |check| method.
155 (check): Support for checking of attributes, operations, and
156 arguments.
157 (Attribute/Operation idl_text): Exception names in getraises,
158 setraises, and raises clauses is serizlied by |$serialize_type|
159 code.
160
161 2008-08-02 Wakaba <wakaba@suika.fam.cx>
162
163 * WebIDL.pm ($integer): Order of selections are changed to match
164 hexadecimal numbers (the original pattern, taken from the spec,
165 was not work for hexadecimal numbers, because the "0" prefix
166 matches to the [0-7]* part (as an empty string) and therefore
167 it does not match with remaining "x..." part of a "0x..." integer
168 literal.
169 ($get_type): It now returns a string, not an array reference,
170 for regular types and |sequence| types (i.e. it in any case
171 returns a string).
172 ($get_next_token): The second item in the array that represents
173 a integer or float token is now a Perl number value, not the
174 original string representation of the number.
175 (check): Support for const value consistency checking.
176 No extended attribute is defined for constants.
177 (Node subclasses): Use simple strings rather than array references
178 for default data type values.
179 ($serialize_type): Type values are now simple strings.
180 (value): If the new attribute value is a false value, then
181 a FALSE value is set to the attribute.
182
183 2008-08-02 Wakaba <wakaba@suika.fam.cx>
184
185 * WebIDL.pm ($get_scoped_name): Now scoped names are stored
186 in its stringified format ("scoped name" as defined in the
187 spec). Note that future version of this module should not use
188 array references for type values and the |type_text| attribute
189 should be made obsolete.
190 (parse_char_string): Unescape attribute names.
191 (check): Support for checking of whether inherited interfaces
192 are actually defined or not. Support for checking of whether
193 interface member identifiers are duplicated or not.
194 ($serialize_type): Scoped names are returned as is. A future
195 version of this code should escape identifiers other than "DOMString",
196 otherwise the idl_text would be non-conforming.
197
198 2008-08-02 Wakaba <wakaba@suika.fam.cx>
199
200 * WebIDL.pm (parse_char_string): Set line/column numbers
201 to generated nodes. Unescape identifiers. Extended attributes
202 for Definition's were ignored.
203 (append_child): Set |parent_node| attribute.
204 (parent_node): New attribute.
205 (check): Support interface/exception members. Support
206 extended attributes. Support definition identifier uniqueness
207 constraint.
208 (qualified_name): New attribute.
209 (Interface/Exception idl_text): Extended attributes were
210 not prepended to the returned text.
211
212 2008-08-02 Wakaba <wakaba@suika.fam.cx>
213
214 * WebIDL.pm (parse_char_string): Set line/column numbers
215 to interface object experimentally. s/shift/pop/g, shift
216 would make things wrong. Support for interface forward
217 declarations was missing. Broken interface declarations
218 with no block were not ignored entirely.
219 (Whatpm::WebIDL::Node): New abstract class. This class
220 makes things easier.
221 (child_nodes): New attribute. Unlike DOM's attribute with
222 same name, this attribute returns a dead list of nodes for
223 simplicity.
224 (get_user_data, set_user_data): New methods.
225 (Module idl_text): A SPACE character should be inserted
226 before the |{| character.
227 (Interface idl_text): Support for interface forward declarations.
228 (is_forward_declaration): New attribute.
229
230 2008-07-19 Wakaba <wakaba@suika.fam.cx>
231
232 * WebIDL.pm (type_text): Better serializer.
233
234 2008-07-19 Wakaba <wakaba@suika.fam.cx>
235
236 * WebIDL.pm: Revise forward-compatible parsing so that
237 it now can handle broken extended attributes and as such.
238
239 2008-07-19 Wakaba <wakaba@suika.fam.cx>
240
241 * WebIDL.pm: Real support for extended attributes.
242 Support for extended attributes with arguments.
243
244 2008-07-19 Wakaba <wakaba@suika.fam.cx>
245
246 * WebIDL.pm: Support for |exception| syntax.
247 (Interface->idl_text): Tentative support for inheritances.
248
249 2008-07-19 Wakaba <wakaba@suika.fam.cx>
250
251 * WebIDL.pm: Hierarchical scoped name support was broken.
252 Support for raises, setraises, and getraises syntaxes.
253
254 2008-07-18 Wakaba <wakaba@suika.fam.cx>
255
256 * WebIDL.pm: Support for |idl_text| attribute, version 1 (no
257 proper support for types, extended attributes, and exceptions yet).
258 WebIDL parser, version 1 (no support for exceptions yet,
259 no proper support for extended attributes yet).
260
261 2008-07-09 Wakaba <wakaba@suika.fam.cx>
262
263 * WebIDL.pm (parse_char_string): Support for basic attribute syntax.
264
265 2008-06-29 Wakaba <wakaba@suika.fam.cx>
266
267 * WebIDL.pm: Support for valuetype and const.
268
269 2008-06-29 Wakaba <wakaba@suika.fam.cx>
270
271 * WebIDL.pm: New module.
272
273 2008-06-15 Wakaba <wakaba@suika.fam.cx>
274
275 * Makefile (Entities.html): URI changed.
276
277 2008-06-08 Wakaba <wakaba@suika.fam.cx>
278
279 * HTML.pm.src: Support for ruby parsing (HTML5 revision 1704).
280
281 2008-06-01 Wakaba <wakaba@suika.fam.cx>
282
283 * HTML.pm.src (_get_next_token): A parse error was missing.
284
285 2008-06-01 Wakaba <wakaba@suika.fam.cx>
286
287 * mklinktypelist.pl: rel=contact is no longer part of the HTML5
288 spec (commented out). (HTML5 revision 1711).
289
290 2008-05-25 Wakaba <wakaba@suika.fam.cx>
291
292 * ContentType.pm: Drop support for UTF-32 (HTML5 revision 1701).
293
294 * HTML.pm.src: UTF-16BE and UTF-16LE should be considered
295 as UTF-16 (HTML5 revision 1701).
296
297 2008-05-25 Wakaba <wakaba@suika.fam.cx>
298
299 * HTML.pm.src: Support for <noframes> in <head> (HTML5 revision
300 1692).
301
302 2008-05-25 Wakaba <wakaba@suika.fam.cx>
303
304 * HTML.pm.src: The secondary insertion mode used when switching
305 to foreign content is the "in body" insertion mode (HTML5 revision
306 1696).
307
308 2008-05-25 Wakaba <wakaba@suika.fam.cx>
309
310 * HTML.pm.src: Don't raise parse error for <isindex/> (HTML5
311 revision 1697).
312
313 2008-05-24 Wakaba <wakaba@suika.fam.cx>
314
315 * HTML.pm.src: Support for end-of-file token in foreign content
316 insertion mode (HTML5 revision 1693). Update SVG camelCase
317 attribute list (HTML5 revision 1700). <textarea> closes
318 </select> (HTML5 revision 1699). More start tags close in
319 foreign content insertion mode (HTML5 revision 1698).
320
321 2008-05-24 Wakaba <wakaba@suika.fam.cx>
322
323 * HTML.pm.src: ";" is not part of charset name (HTML5 revision 1665).
324
325 2008-05-24 Wakaba <wakaba@suika.fam.cx>
326
327 * HTML.pm.src: More robust charset parameter detection (HTML5
328 revision 1674).
329
330 2008-05-24 Wakaba <wakaba@suika.fam.cx>
331
332 * ContentType.pm: Support for image/vnd.microsoft.icon (HTML5
333 revision 1676).
334
335 2008-05-24 Wakaba <wakaba@suika.fam.cx>
336
337 * HTML.pm.src: Ignore language part of public identifiers for
338 quriks mode detection (HTML5 revision 1679).
339
340 2008-05-24 Wakaba <wakaba@suika.fam.cx>
341
342 * HTML.pm.src: Reduce the number of errors in truncated doctypes (HTML5
343 revision 1685).
344
345 2008-05-24 Wakaba <wakaba@suika.fam.cx>
346
347 * HTML.pm.src: Support for EOF in new states for tags (HTML5
348 revision 1684).
349
350 2008-05-24 Wakaba <wakaba@suika.fam.cx>
351
352 * HTML.pm.src (_reset_insertion_mode): Make <td>.innerHTML
353 work (HTML5 revision 1690).
354
355 2008-05-24 Wakaba <wakaba@suika.fam.cx>
356
357 * HTML.pm.src (_tree_construction_main): Change handling of
358 end tags in head insertion modes (HTML5 revision 1686).
359 (parse_char_string): Bug fix for non-utf8 character string handlings.
360 (parse_char_stream): |ungetc| does not work well for this context.
361
362 2008-05-18 Wakaba <wakaba@suika.fam.cx>
363
364 * HTML.pm.src (parse_byte_string): Redefined to invoke
365 |parse_byte_stream|.
366 (parse_byte_stream): New method.
367
368 2008-05-18 Wakaba <wakaba@suika.fam.cx>
369
370 * HTML.pm.src (parse_byte_string): Fix the column number reported
371 by encoding layer error reporter.
372
373 2008-05-17 Wakaba <wakaba@suika.fam.cx>
374
375 * HTML.pm.src (parse_byte_string): Use streaming decoder
376 rather than converting the whole byte string and then parsing.
377 Propagate errors in character encoding layer.
378 (get_next_token): Precise error reporting for |bare stago| error.
379
380 2008-05-17 Wakaba <wakaba@suika.fam.cx>
381
382 * HTML.pm.src (parse_char_stream): New method.
383 (parse_char_string): This method is now defined as an invocation
384 of the |parse_char_stream| method.
385
386 2008-05-17 Wakaba <wakaba@suika.fam.cx>
387
388 * HTML.pm.src (parse_byte_string): Report various status
389 of the sniffing as info-level errors. Support for new
390 decoding framework in parser resestting.
391 (new): Various default error levels were not set.
392
393 2008-05-17 Wakaba <wakaba@suika.fam.cx>
394
395 * HTML.pm.src (parse_byte_string): HTML5 encoding siniffing
396 algorithm, except for the actual sniffing, is implemented
397 with new framework with Message::Charset::Info.
398
399 2008-05-16 Wakaba <wakaba@suika.fam.cx>
400
401 * CacheManifest.pm (_parse): Drop fragment identifiers from
402 URIs in fallback section (HTML5 revision 1596).
403
404 2008-05-10 Wakaba <wakaba@suika.fam.cx>
405
406 * Makefile (Entities.html): URI has changed.
407
408 2008-05-10 Wakaba <wakaba@suika.fam.cx>
409
410 * CacheManifest.pm: Don't replace U+0000 NULL (HTML5 revision
411 1553).
412
413 2008-05-06 Wakaba <wakaba@suika.fam.cx>
414
415 * ContentChecker.pm: Noted that those returned in |table| are
416 no longer table elements, but table objects returned
417 by Whatpm::HTMLTable.
418
419 * HTMLTable.pm (form_table): Return table element node
420 as |$table->{element}|.
421 (assign_header): Support for the |headers=""| attribute.
422
423 2008-05-06 Wakaba <wakaba@suika.fam.cx>
424
425 * HTMLTable.pm (assign_header): New function; first version
426 with no support for headers="".
427 (form_table): Include table width and height to the returned
428 table object for covenience. Indexing in column assignement was wrong.
429 Set whether a data cell is empty or not for convenience.
430
431 2008-05-05 Wakaba <wakaba@suika.fam.cx>
432
433 * HTMLTable.pm: Robuster caption support (HTML5 revision 1393).
434
435 2008-05-05 Wakaba <wakaba@suika.fam.cx>
436
437 * HTMLTable.pm: How table model errors are detected is
438 changed (HTML5 revision 1387).
439
440 2008-05-05 Wakaba <wakaba@suika.fam.cx>
441
442 * HTMLTable.pm: The algorithm now moves |tfoot| elements
443 to the end of the table (HTML5 revision 1380).
444
445 2008-05-05 Wakaba <wakaba@suika.fam.cx>
446
447 * HTMLTable.pm: The algorithm is now 0-based indexing, instead
448 of 1-based (HTML5 revision 1376).
449
450 2008-05-05 Wakaba <wakaba@suika.fam.cx>
451
452 * ContentType.pm: "Content-Type: text/plain; charset=UTF-8"
453 and "Content-Encoding" no longer prevent sniffing (HTML5
454 revision 1288).
455
456 2008-05-05 Wakaba <wakaba@suika.fam.cx>
457
458 * ContentType.pm: Skip BOMs n feed or HTML algorithm (HTML5 revision
459 1282).
460
461 2008-05-03 Wakaba <wakaba@suika.fam.cx>
462
463 * ContentChecker.pm: Support for global attributes.
464 Status of XML specs are added.
465
466 2008-05-03 Wakaba <wakaba@suika.fam.cx>
467
468 * ContentChecker.pm (check_element): Support for |template=""|
469 and |ref=""| attribute (referent element type checking).
470
471 2008-04-29 Wakaba <wakaba@suika.fam.cx>
472
473 * CacheManifest.pm (_parse): New same origin definition (HTML5 revision
474 1500) is implemented (except for IDNA part and URI-scheme-specific
475 knowledge). Line number counting was wrong for LF-only
476 documents.
477
478 2008-04-13 Wakaba <wakaba@suika.fam.cx>
479
480 * HTML.pm.src: Raise an parse error for any disallowed
481 character (HTML5 revision 1263).
482
483 2008-04-13 Wakaba <wakaba@suika.fam.cx>
484
485 * mkentitylist.pl: Support for new HTML5 entity table format (the
486 definition for |AElig;| was missing).
487
488 2008-04-13 Wakaba <wakaba@suika.fam.cx>
489
490 * HTML.pm.src, mkhtmlparser.pl: Support for element/attribute
491 name/namespace fixup (HTML5 revisions 1413, 1415, 1416, and 1417).
492
493 2008-04-13 Wakaba <wakaba@suika.fam.cx>
494
495 * HTML.pm.src: List of element names that close foreign content
496 insertion mode is added (HTML5 revisions 1412 and 1418).
497
498 2008-04-13 Wakaba <wakaba@suika.fam.cx>
499
500 * HTML.pm.src: Support for |mglyph| and |malignmark|
501 elements (HTML5 revision 1410).
502
503 2008-04-13 Wakaba <wakaba@suika.fam.cx>
504
505 * HTML.pm.src: Support for new long MathML entities (HTML5
506 revision 1406).
507
508 2008-04-13 Wakaba <wakaba@suika.fam.cx>
509
510 * HTML.pm.src: CDATA section support for MathML and SVG
511 elements (HTML5 revision 1404 and 1420).
512
513 2008-04-12 Wakaba <wakaba@suika.fam.cx>
514
515 * HTML.pm.src, mkhtmlparser.pl: Support for MathML and SVG
516 elements (HTML5 revision 1404). Unused !!!macro definitions
517 are removed.
518
519 2008-04-12 Wakaba <wakaba@suika.fam.cx>
520
521 * HTML.pm.src, mkhtmlparser.pl: The way permitted slash errors
522 are raised is changed (HTML5 revision 1404).
523
524 2008-04-06 Wakaba <wakaba@suika.fam.cx>
525
526 * HTML.pm.src: Category sets that are no longer used are removed.
527
528 2008-04-06 Wakaba <wakaba@suika.fam.cx>
529
530 * HTML.pm.src: The ->[1] property of stack entries are now
531 replaced by constants representing element category.
532
533 2008-04-06 Wakaba <wakaba@suika.fam.cx>
534
535 * HTML.pm.src: Don't use local name stored in stack (i.e. ->[1])
536 for error reporting. (This is a preparation for using constant
537 value for ->[1].)
538
539 2008-03-22 Wakaba <wakaba@suika.fam.cx>
540
541 * RDFXML.pm: Typo fixed.
542
543 2008-03-22 Wakaba <wakaba@suika.fam.cx>
544
545 * ContentChecker.pm: |fact_level| is now treated
546 as same as |must_level|, i.e. level = |m|.
547 (check_element): Make list of URIs in the DOM.
548
549 2008-03-21 Wakaba <wakaba@suika.fam.cx>
550
551 * RDFXML.pm: Language accessor implemented.
552 Local (null-namespace) attribute support.
553
554 2008-03-21 Wakaba <wakaba@suika.fam.cx>
555
556 * RDFXML.pm: Factored out ID checking code.
557
558 2008-03-21 Wakaba <wakaba@suika.fam.cx>
559
560 * RDFXML.pm: TODO items noted. Validation of ID
561 and URI attributes is implemented. Warn if unknown
562 value is used in rdf:parseType="" attribute.
563
564 * URIChecker.pm (check_rdf_uri_reference): New function.
565
566 2008-03-21 Wakaba <wakaba@suika.fam.cx>
567
568 * RDFXML.pm: bnodeid implemented. Relative references
569 are now resolved.
570
571 2008-03-21 Wakaba <wakaba@suika.fam.cx>
572
573 * ContentChecker.pm: RDF reification implemented.
574
575 * RDFXML.pm: undef vs false bug fixed.
576 Reification implemented.
577
578 2008-03-21 Wakaba <wakaba@suika.fam.cx>
579
580 * RDFXML.pm: s/id/ID/ for attribute name.
581 The |node| arguments are added for |ontriple| calls.
582 Too many "attribute not allowed" errors were raised.
583
584 * ContentChecker.pm: Initial experimental support for rdf:RDF
585 element.
586
587 2008-03-21 Wakaba <wakaba@suika.fam.cx>
588
589 * RDFXML.pm: New module.
590
591 2008-03-20 Wakaba <wakaba@suika.fam.cx>
592
593 * HTML.pm.src (set_inner_html): Line/column number
594 code was old one yet.
595
596 2008-03-20 Wakaba <wakaba@suika.fam.cx>
597
598 * HTML.pm.src: Better line/column reporting for "duplicate attribute"
599 errors. Line/column markings for DOCTYPE, comment, and
600 character tokens are reintroduced; otherwise,
601 error location for "not HTML5" error and errors
602 for implied elements are not attached.
603
604 2008-03-20 Wakaba <wakaba@suika.fam.cx>
605
606 * HTML.pm.src: Set line/column numbers to attributes.
607
608 * NanoDOM.pm (create_attribute_ns, set_attribute_node_ns): Added.
609 (value): Setter implemented.
610
611 * mkhtmlparser.pl: Set line/column numbers to Attr nodes.
612
613 2008-03-20 Wakaba <wakaba@suika.fam.cx>
614
615 * HTML.pm.src: Unused line/column markings are removed.
616
617 2008-03-20 Wakaba <wakaba@suika.fam.cx>
618
619 * HTML.pm.src (_get_next_token): Remove |first_start_tag|
620 flag, which is no longer used.
621
622 2008-03-17 Wakaba <wakaba@suika.fam.cx>
623
624 * HTML.pm.src: Set line/column information to element nodes.
625
626 * mkhtmlparser.pl (!!!create-element, !!!insert-element,
627 and !!!insert-element-t): Set line/column information to
628 element nodes.
629
630 2008-03-17 Wakaba <wakaba@suika.fam.cx>
631
632 * HTML.pm.src (_get_next_token): The first "<" character
633 in "<?", "<>", or "</>" should be the error point.
634
635 2008-03-16 Wakaba <wakaba@suika.fam.cx>
636
637 * HTML.pm.src: Some more fixes on error position reporting.
638
639 2008-03-16 Wakaba <wakaba@suika.fam.cx>
640
641 * HTML.pm.src: Token-level precious error reporting.
642
643 2008-03-16 Wakaba <wakaba@suika.fam.cx>
644
645 * HTML.pm.src: Preparation for more precious error point
646 reporting.
647
648 2008-03-11 Wakaba <wakaba@suika.fam.cx>
649
650 * HTML.pm.src: Error type revised.
651
652 2008-03-11 Wakaba <wakaba@suika.fam.cx>
653
654 * HTML.pm.src: Similar codes are merged together, again.
655
656 2008-03-11 Wakaba <wakaba@suika.fam.cx>
657
658 * HTML.pm.src: Similar codes are merged together.
659
660 2008-03-10 Wakaba <wakaba@suika.fam.cx>
661
662 * mkhtmlparser.pl: Set "level" parameter to parse errors.
663
664 * HTML.pm.src: Code refined.
665
666 2008-03-09 Wakaba <wakaba@suika.fam.cx>
667
668 * HTML.pm.src: |</body>| treatement has been changed (HTML5
669 revision 1348). Note that I really don't know this makes
670 any difference in the black-box behavior of the parser.
671
672 2008-03-09 Wakaba <wakaba@suika.fam.cx>
673
674 * HTML.pm.src: New end-of-file token implementation (HTML5
675 revision 1348).
676
677 2008-03-09 Wakaba <wakaba@suika.fam.cx>
678
679 * HTML.pm.src: |applet| support (HTML5 revision 1347).
680
681 2008-03-09 Wakaba <wakaba@suika.fam.cx>
682
683 * HTML.pm.src: Foster parenting in AAA (HTML5 revision 1343).
684
685 2008-03-09 Wakaba <wakaba@suika.fam.cx>
686
687 * HTML.pm.src: Support for |<input>| in the "in select" insertion
688 mode and support for the "in select in table" insertion mode (HTML5
689 revision 1342).
690
691 2008-03-09 Wakaba <wakaba@suika.fam.cx>
692
693 * HTML.pm.src: No foster parenting for <script> and <script>
694 in non-tainted <table>s (HTML5 revision 1336).
695
696 2008-03-09 Wakaba <wakaba@suika.fam.cx>
697
698 * HTML.pm.src: Ignore white space characters between <html>
699 and <head> (HTML5 revision 1332).
700
701 2008-03-09 Wakaba <wakaba@suika.fam.cx>
702
703 * HTML.pm.src: Treat <input type=hidden> as if it were a
704 white space (HTML5 revision 1331).
705
706 2008-03-08 Wakaba <wakaba@suika.fam.cx>
707
708 * HTML.pm.src: Ignore U+000A at the beginning of a |listing|
709 element (HTML5 revision 1330).
710
711 2008-03-08 Wakaba <wakaba@suika.fam.cx>
712
713 * HTML.pm.src: <title> is always appended to the current
714 element (HTML5 revision 1328).
715
716 2008-03-08 Wakaba <wakaba@suika.fam.cx>
717
718 * HTML.pm.src: White space in tainted tables are moved
719 into foster parents (HTML5 revision 1326).
720
721 2008-03-08 Wakaba <wakaba@suika.fam.cx>
722
723 * HTML.pm.src: Reduce errors from foster parenting cases (HTML5
724 revision 1321).
725
726 2008-03-08 Wakaba <wakaba@suika.fam.cx>
727
728 * HTML.pm.src: |</h/n/>| case code rearranged to align with
729 the spec (HTML5 revision 1320). Note that we finally complete
730 all of HTML5 revision 1320 changes.
731
732 2008-03-08 Wakaba <wakaba@suika.fam.cx>
733
734 * HTML.pm.src: |</form>| now works similar to |</div>| for unclosed
735 tags (HTML5 revision 1320).
736
737 2008-03-08 Wakaba <wakaba@suika.fam.cx>
738
739 * HTML.pm.src: |</p>| case rearranged with no actual change in fact.
740
741 2008-03-08 Wakaba <wakaba@suika.fam.cx>
742
743 * HTML.pm.src: A "generate implied end tags" code (t409.1)
744 could not be reached so that it is now removed (HTML5 revision
745 1320).
746
747 2008-03-08 Wakaba <wakaba@suika.fam.cx>
748
749 * HTML.pm.src: Code for the case of |</div>| and so on are revised
750 to align with new spec text (HTML5 revision 1320).
751
752 2008-03-08 Wakaba <wakaba@suika.fam.cx>
753
754 * HTML.pm.src: Remove strange |if| condition; however, it should
755 have had no harm in theory.
756
757 2008-03-08 Wakaba <wakaba@suika.fam.cx>
758
759 * HTML.pm.src (_tree_construction_main): '</p>' in body
760 case is split from other end tags for the preparation
761 of implementing HTML revision 1320.
762
763 2008-03-07 Wakaba <wakaba@suika.fam.cx>
764
765 * HTML.pm.src: Simplified "generate implied end tag" (HTML5
766 revision 1320).
767
768 2008-03-07 Wakaba <wakaba@suika.fam.cx>
769
770 * HTML.pm.src (_tree_construction_main): Merge rules for "h1"
771 and "div" (HTML5 revision 1318). Add comments to where
772 |form| pointer association codes should be inserted (HTML5 revision
773 1319).
774
775 2008-03-06 Wakaba <wakaba@suika.fam.cx>
776
777 * HTML.pm.src: <html> treatement refined (HTML5 revision 1314).
778
779 2008-03-05 Wakaba <wakaba@suika.fam.cx>
780
781 * HTML.pm.src: Since the case t268 should never be reached (no
782 other token type, there are), it is replaced by a |die| statement.
783
784 2008-03-05 Wakaba <wakaba@suika.fam.cx>
785
786 * HTML.pm.src: Typo fixed.
787
788 2008-03-04 Wakaba <wakaba@suika.fam.cx>
789
790 * HTML.pm.src (_tree_construction_initial): Some limited quirks
791 doctypes were not uppercased for comparison.
792
793 2008-03-03 Wakaba <wakaba@suika.fam.cx>
794
795 * HTML.pm.src (tree construction and set_inner_html): Checkpoints
796 are added.
797
798 2008-03-03 Wakaba <wakaba@suika.fam.cx>
799
800 * HTML.pm.src (_tokenize_attempt_to_consume_an_entity): Checkpoints
801 are set. Cases that are unlikely reached are noted as so.
802
803 2008-03-03 Wakaba <wakaba@suika.fam.cx>
804
805 * HTML.pm.src: Checkpoints for debugging are added.
806
807 * mkhtmlparser.pl: Support for |!!!cp| syntax.
808
809 2008-03-03 Wakaba <wakaba@suika.fam.cx>
810
811 * HTML.pm.src, mkhtmlparser.pl: s/_input_character/_char/g
812 for simplicity.
813
814 2008-03-03 Wakaba <wakaba@suika.fam.cx>
815
816 * HTML.pm.src: Flag name changed: s/correct/force-quirks/g (HTML5
817 revision 1307).
818
819 2008-03-03 Wakaba <wakaba@suika.fam.cx>
820
821 * HTML.pm.src (_get_next_token): Where the /incorrect/ flag
822 is set are changed (HTML5 revision 1305).
823
824 2008-03-02 Wakaba <wakaba@suika.fam.cx>
825
826 * HTML.pm.src: Raise a parse error for |<span ===>| (HTML5 revision
827 1292). Entities are not parsed in comment-like part in RCDATA
828 elements (HTML5 revision 1294). Allow bare & at the end
829 of attribute value literals (HTML5 revision 1296). More
830 quirks mode doctypes (HTML5 revision 1302). Requires spaces
831 between attributes and ban attribute names or unquoted
832 attribute values containing single or double quotes (HTML5
833 revision 1303).
834
835 2008-03-02 Wakaba <wakaba@suika.fam.cx>
836
837 * ContentChecker.pm: Typo fixed. Don't raise "character encoding"
838 and related errors unless it is an HTML document (though the spec
839 is unclear on whether it is applied to XHTML document).
840
841 * HTML.pm (%HTMLAttrStatus): WF2 repetition model attributes
842 are added.
843
844 2008-03-02 Wakaba <wakaba@suika.fam.cx>
845
846 * HTML.pm.src: s/local_name/manakai_local_name/g.
847
848 2008-03-01 Wakaba <wakaba@suika.fam.cx>
849
850 * _NamedEntityList.pm: Updated (HTML5 revision 1286).
851
852 * HTML.pm.src: |charset| in |content| attribute is
853 case-insensitive (HTML5 revision 1270).
854
855 2008-02-26 Wakaba <wakaba@suika.fam.cx>
856
857 * ContentChecker.pm: New status constants are added.
858 ($ElementDefault): |status| added.
859 (check_element): Err for non-standard or deprecated elements.
860 (_attr_status_info): For non-standard or deprecated attributes.
861
862 2008-02-24 Wakaba <wakaba@suika.fam.cx>
863
864 * ContentChecker.pm (_attr_status_info): New internal method.
865
866 2008-02-24 Wakaba <wakaba@suika.fam.cx>
867
868 * ContentChecker.pm (check_element): Element standardized
869 status information is now dispatched.
870
871 2008-02-24 Wakaba <wakaba@suika.fam.cx>
872
873 * ContentChecker.pm (check_element): Fix |del|-and-significant
874 problem by adding some more arguments.
875
876 2008-02-24 Wakaba <wakaba@suika.fam.cx>
877
878 * ContentChecker.pm (check_element): Use context of
879 container-for-the-purpose-of-content-model element (not transparent
880 element) for |check_child_element| calling and significant
881 text flag marking. This reintroduces |<del>|-and-significant
882 problem again.
883
884 2008-02-24 Wakaba <wakaba@suika.fam.cx>
885
886 * ContentChecker.pm (check_element): Make semi-transparent
887 elements ignored for the purpose of phase changes in
888 content model checking.
889
890 2008-02-23 Wakaba <wakaba@suika.fam.cx>
891
892 * ContentChecker.pm (check_element): In-element state
893 was not properly managed for transparent cases.
894
895 2008-02-23 Wakaba <wakaba@suika.fam.cx>
896
897 * ContentChecker.pm (check_element): Support for |video|
898 and |audio| as semi-transparent elements.
899
900 2008-02-23 Wakaba <wakaba@suika.fam.cx>
901
902 * ContentChecker.pm ($HTMLSemiTransparentElements): New.
903 (check_element): s/minuses/minus_elements/, s/pluses/plus_elements/.
904 Support for |html:object| as a semi-transparent element.
905
906 2008-02-23 Wakaba <wakaba@suika.fam.cx>
907
908 * ContentChecker.pm (check_element): The way to traverse
909 the tree is entirely revised to make it easier to track
910 the state of ancestors/descendants. As a result of this
911 revision (which rewrites almost all of Whatpm::ContentChecker::HTML),
912 support for content model checking for HTML elements |figure|,
913 |object|, |video|, and |audio| and checking for XML elements (and
914 some XMLNS checkings) are dropped for now. They will be
915 reimplemented in due cource.
916
917 2008-02-17 Wakaba <wakaba@suika.fam.cx>
918
919 * HTML.pm.src: |>| in public or system literal closes the DOCTYPE
920 token (HTML5 revision 1225).
921
922 2008-02-17 Wakaba <wakaba@suika.fam.cx>
923
924 * ContentChecker.pm ({unsupported_level}): New value.
925
926 * HTML.pm.src: Save whether |meta| |content| attribute
927 contains character references or not.
928
929 2008-02-17 Wakaba <wakaba@suika.fam.cx>
930
931 * ContentChecker.pm (_get_children): (Incompleted) attempt to
932 imlement significant content checking for contents
933 with |del| elements.
934
935 2008-02-17 Wakaba <wakaba@suika.fam.cx>
936
937 * ContenteChecker.pm ($HTMLTransparentElements): More
938 elements are added.
939 (_get_children): HTML |object| elements are now semi-transparent.
940
941 * NanoDOM.pm (manakai_html, manakai_head): New methods.
942
943 2008-02-16 Wakaba <wakaba@suika.fam.cx>
944
945 * CacheManifest.pm: HTML5 revision 1211 implemented.
946
947 * CacheManifest.pod: Updated.
948
949 2008-02-10 Wakaba <wakaba@suika.fam.cx>
950
951 * ContentChecker.pm (check_document, check_element): Support
952 for second argument ($onsubdoc).
953 (_get_css_parser): Removed (now it is part of WDCC).
954
955 2008-02-09 Wakaba <wakaba@suika.fam.cx>
956
957 * ContentChecker.pm (_get_css_parser): New.
958
959 2007-11-25 Wakaba <wakaba@suika.fam.cx>
960
961 * ContentChecker.pm ($AnyChecker): Old way to add child elements
962 for checking had been used.
963
964 2007-11-25 Wakaba <wakaba@suika.fam.cx>
965
966 * ContentChecker.pm (check_element): New todo item type |descendant|.
967
968 2007-11-23 Wakaba <wakaba@suika.fam.cx>
969
970 * IMTChecker.pm: Revised to raise errors and warnings as (poorly)
971 specced in RFC 2046 and RFC 4288.
972 (application/atom+xml): Definition added.
973
974 2007-11-23 Wakaba <wakaba@suika.fam.cx>
975
976 * URIChecker.pm: Make RFC 3986 should-level errors
977 warnings (rather than SHOULD-level errors).
978
979 2007-11-23 Wakaba <wakaba@suika.fam.cx>
980
981 * NanoDOM.pm (get_user_data, set_user_data): New methods.
982
983 * HTML.pm.src: A flag for character references in attribute
984 values are added. Set |manakai_has_reference| user data
985 to |charset| attribute.
986
987 2007-11-23 Wakaba <wakaba@suika.fam.cx>
988
989 * NanoDOM.pm (input_encoding, manakai_charset, manakai_has_bom): New
990 attributes.
991
992 * ContentChecker.pm (check_document): Warn if charset requirements
993 cannot be tested.
994
995 2007-11-19 Wakaba <wakaba@suika.fam.cx>
996
997 * HTML.pm.src (parse_byte_string): Detect charset
998 by universalchardet if charset parameter is not specified.
999
1000 * Makefile (Charset-all, Charset-clean): New rules.
1001
1002 2007-11-18 Wakaba <wakaba@suika.fam.cx>
1003
1004 * ContentChecker.pm (check_document): Check the existence
1005 of character encoding declaration and selection of encoding
1006 for HTML document.
1007
1008 2007-11-18 Wakaba <wakaba@suika.fam.cx>
1009
1010 * ContentType.pm (get_sniffed_type): Return also the official
1011 type in list context.
1012
1013 2007-11-18 Wakaba <wakaba@suika.fam.cx>
1014
1015 * ContentType.pm: Sniffing with leading white space
1016 ignoring (HTML5 revisions 1013 and 1016).
1017
1018 2007-11-18 Wakaba <wakaba@suika.fam.cx>
1019
1020 * ContentType.pm: HTML5 revision 1013 changes, except for leading
1021 white spaces, are implemented.
1022
1023 2007-11-11 Wakaba <wakaba@suika.fam.cx>
1024
1025 * HTML.pm.src (parse_char_string): Set |inner_encoding|
1026 attribute if possible.
1027
1028 2007-11-11 Wakaba <wakaba@suika.fam.cx>
1029
1030 * HTML.pm.src (parse_byte_string): New method.
1031 (parse_char_string): New alias for |parse_string|.
1032 (main phase): Invoking "change the encoding" algorithm if desired.
1033
1034 * HTML.pod: Updated.
1035
1036 2007-11-11 Wakaba <wakaba@suika.fam.cx>
1037
1038 * HTML.pod (get_inner_html): Removed.
1039
1040 * Makefile (HTML-all, HTML-clean): New.
1041
1042 2007-11-11 Wakaba <wakaba@suika.fam.cx>
1043
1044 * HTML.pm.src (get_inner_html): Removed (moved to HTML/Serializer.pm).
1045
1046 2007-11-08 Wakaba <wakaba@suika.fam.cx>
1047
1048 * mklinktypelist.pl: s/noreferer/noreferrer/ (HTML5 revision 1132).
1049
1050 2007-11-04 Wakaba <wakaba@suika.fam.cx>
1051
1052 * Makefile: |CacheManifest.html| is added.
1053
1054 * CacheManifest.pod: New file.
1055
1056 2007-11-04 Wakaba <wakaba@suika.fam.cx>
1057
1058 * CacheManifest.pm: New module.
1059
1060 2007-11-04 Wakaba <wakaba@suika.fam.cx>
1061
1062 * HTML.pm.src: Support for application cache selection algorithm
1063 callback.
1064
1065 2007-11-04 Wakaba <wakaba@suika.fam.cx>
1066
1067 * mklinktypelist.pl: Support for rel=noreferer (HTML5 revision 1118).
1068
1069 2007-10-17 Wakaba <wakaba@suika.fam.cx>
1070
1071 * Makefile (clean): New rule.
1072
1073 * NanoDOM.pm (public_id, system_id): New attributes.
1074
1075 2007-10-17 Wakaba <wakaba@suika.fam.cx>
1076
1077 * Makefile (CSS-all, CSS-clean, clean): New rules.
1078
1079 2007-10-14 Wakaba <wakaba@suika.fam.cx>
1080
1081 * ContentChecker.pm (check_document): Support for
1082 new |is_xml_root| flag.
1083 (check_element): Support for new |pluses| state.
1084 (_add_pluses): New method.
1085 (_remove_minuses): Support for new |minus| item.
1086
1087 2007-09-24 Wakaba <wakaba@suika.fam.cx>
1088
1089 * ContentChecker.pm: Raise specific error for invalid
1090 root element.
1091
1092 2007-09-24 Wakaba <wakaba@suika.fam.cx>
1093
1094 * ContentChecker.pm: Set level values for later uses.
1095
1096 2007-09-09 Wakaba <wakaba@suika.fam.cx>
1097
1098 * ContentChecker.pm: Support for language tag validation.
1099
1100 2007-09-09 Wakaba <wakaba@suika.fam.cx>
1101
1102 * LangTag.pm (check_rfc3066_language_tag): New method.
1103
1104 2007-09-09 Wakaba <wakaba@suika.fam.cx>
1105
1106 * LangTag.pm: New module.
1107
1108 2007-09-04 Wakaba <wakaba@suika.fam.cx>
1109
1110 * HTML.pm.src: Some error types were wrong.
1111
1112 2007-08-17 Wakaba <wakaba@suika.fam.cx>
1113
1114 * CSS/: New directory.
1115
1116 2007-08-17 Wakaba <wakaba@suika.fam.cx>
1117
1118 * ContentChecker.pm (_check_get_children): Support
1119 for |noscript| in |head|.
1120
1121 2007-08-12 Wakaba <wakaba@suika.fam.cx>
1122
1123 * URI/: New directory.
1124
1125 2007-08-11 Wakaba <wakaba@suika.fam.cx>
1126
1127 * HTML.pm.src: Tokenizer's states are now represented in
1128 number.
1129
1130 2007-08-11 Wakaba <wakaba@suika.fam.cx>
1131
1132 * HTML.pm.src: |or|s for insertion modes are replaced
1133 by |&|s.
1134
1135 2007-08-11 Wakaba <wakaba@suika.fam.cx>
1136
1137 * HTML.pm.src: Token types are now represented in number.
1138
1139 2007-08-11 Wakaba <wakaba@suika.fam.cx>
1140
1141 * ContentType.pm (SEE ALSO): Updated.
1142
1143 * HTML.pm.src: Insertion modes are now represented in number.
1144
1145 2007-08-11 Wakaba <wakaba@suika.fam.cx>
1146
1147 * ContentType.pm: Sniffing for bitmap images (HTML5 revision
1148 999) is implemented.
1149
1150 2007-08-08 Wakaba <wakaba@suika.fam.cx>
1151
1152 * ContentType.pm: Sniffing for |<script| (HTML5 revision
1153 983) is implemented.
1154
1155 2007-08-06 Wakaba <wakaba@suika.fam.cx>
1156
1157 * ContentChecker.pod: New documentation.
1158
1159 * Makefile: A rule for |ContentChecker.html| is added.
1160
1161 * ContentChecker.pm: A pod "LICENSE" section is added.
1162
1163 * NanoDOM.pm ($VERSION): New variable.
1164
1165 2007-08-05 Wakaba <wakaba@suika.fam.cx>
1166
1167 * H2H.pm: |b|, |i|, and |sub| are added to the
1168 list of allowed HTML elements.
1169
1170 2007-08-05 Wakaba <wakaba@suika.fam.cx>
1171
1172 * H2H.pm: |samp| is added to the list of allowed
1173 HTML elements.
1174
1175 * URIChecker.pm (check_iri): New.
1176 (check_iri_reference): Error type for IRI reference
1177 syntax error is changed.
1178
1179 2007-08-04 Wakaba <wakaba@suika.fam.cx>
1180
1181 * ContentChecker.pm: Reference to the |Whatpm::ContentChecker::Atom|
1182 is added.
1183 (check_document): Load appropriate module before validation.
1184
1185 2007-08-04 Wakaba <wakaba@suika.fam.cx>
1186
1187 * ContentChecker/: New directory.
1188
1189 2007-08-04 Wakaba <wakaba@suika.fam.cx>
1190
1191 * ContentChecker.pm: HTML |time| element is implemented.
1192
1193 * HTMLTable.pm: Comments are updated as HTML5 is revised.
1194
1195 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1196
1197 * ContentChecker.pm (check_document): Return value
1198 even if no document element is found.
1199
1200 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1201
1202 * HTML.pm.src: |$in_body| is no longer a function.
1203
1204 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1205
1206 * HTML.pm.src: The |$in_body| code has been moved down.
1207
1208 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1209
1210 * HTML.pm.src: The "trailing end" insertion mode
1211 is split into "after html body" and "after html frameset"
1212 insertion modes. Their codes are merged with "after body"
1213 and "after frameset" codes. |$previous_insertion_mode|
1214 has been removed. "after frameset" code is
1215 merged with "in frameset" code.
1216
1217 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1218
1219 * HTML.pm.src: The "before head" insertion mode is
1220 merged with the "in head" insertion mode.
1221
1222 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1223
1224 * HTML.pm.src: Cases in "in head" insertion mode are
1225 reorganized.
1226
1227 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1228
1229 * HTML.pm.src: Some cases in "in table" insertion mode
1230 are merged.
1231
1232 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1233
1234 * HTML.pm.src: The "in row" insertion mode is merged
1235 with "in table" insertion mode.
1236
1237 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1238
1239 * HTML.pm.src: The "in table" and "in table body" insertion
1240 modes are merged.
1241
1242 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1243
1244 * HTML.pm.src: There is no "in table head" or "in table foot"
1245 insertion mode!
1246
1247 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1248
1249 * HTML.pm.src: |<noframes>| "in frameset" and "in noframes"
1250 now directly invoke the handler.
1251
1252 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1253
1254 * HTML.pm.src: Codes for "in cell" insertion mode
1255 is merged to the "in body" insertion mode code.
1256
1257 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1258
1259 * HTML.pm.src: Codes for "in body" and "in caption"
1260 insertion modes are merged.
1261
1262 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1263
1264 * HTML.pm.src: Two |!!!next-token|s were missing.
1265
1266 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1267
1268 * HTML.pm.src: Use numeric constant for |{content_mode}|
1269 instead of string constant for |{content_model_flag}|.
1270
1271 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1272
1273 * HTML.pm.src: Add the name of the attribute
1274 to the "duplicate attribute" error.
1275
1276 2007-07-17 Wakaba <wakaba@suika.fam.cx>
1277
1278 * ContentChecker.pm: Return the |class| node list.
1279
1280 2007-07-17 Wakaba <wakaba@suika.fam.cx>
1281
1282 * ContentChecker.pm: Return the |id| node list.
1283
1284 * HTML.pm.src: A typo is fixed.
1285
1286 2007-07-16 Wakaba <wakaba@suika.fam.cx>
1287
1288 * ContentChecker.pm: Drop wrong |level => 'error'| specification
1289 from "in HTML:xml:lang" error. Character position
1290 is now the last part of the error type in the URI error
1291 description. Report "unsupported" status for language
1292 tags, media queries, script codes, and style sheets.
1293
1294 2007-07-16 Wakaba <wakaba@suika.fam.cx>
1295
1296 * ContentChecker.pm: Report error if |xml:lang|
1297 in HTML, |lang| in XML, |xmlns| in XML, and |meta| |charset|
1298 in XML.
1299
1300 * NanoDOM.pm (Attr.owner_document): New attribute.
1301
1302 2007-07-16 Wakaba <wakaba@suika.fam.cx>
1303
1304 * HTML.pm.src: The character immediately following
1305 a bare |hcro| was discarded. Fix handling of
1306 entity references in attribute values.
1307
1308 2007-07-16 Wakaba <wakaba@suika.fam.cx>
1309
1310 * HTML.pm.src (main and trailin end phases): Token
1311 types |DOCTYPE|, |comment|, |end-of-file|, and |<html>| are
1312 factored out. Error types |in html:#DOCTYPE|
1313 and |after html:#DOCTYPE| are merged
1314 into |DOCTYPE in the middle|. |</frameset>|
1315 in fragment parsing mode changed the
1316 insertion mode.
1317
1318 2007-07-16 Wakaba <wakaba@suika.fam.cx>
1319
1320 * HTML.pm.src: |$phase| has been removed; The |trailing end|
1321 phase is now an insertion mode. Treatments for white
1322 space character tokens were incorrect for some
1323 insertion modes. An old |meta| case was not removed.
1324
1325 2007-07-16 Wakaba <wakaba@suika.fam.cx>
1326
1327 * HTML.pm.src: |meta| charset declaration extraction
1328 implemented (but changing the encoding is not yet:-).
1329
1330 2007-07-15 Wakaba <wakaba@suika.fam.cx>
1331
1332 * Charset/: New directory.
1333
1334 2007-07-15 Wakaba <wakaba@suika.fam.cx>
1335
1336 * H2H.pm: New Perl module (created from
1337 manakai's H2H.dis).
1338
1339 2007-07-15 Wakaba <wakaba@suika.fam.cx>
1340
1341 * XMLSerializer.pm: New Perl module (created from
1342 manakai's SimpleLS.dis).
1343
1344 2007-07-07 Wakaba <wakaba@suika.fam.cx>
1345
1346 * HTML.pm.src: |<!---x-->| was not processed correctly.
1347
1348 2007-07-01 Wakaba <wakaba@suika.fam.cx>
1349
1350 * HTML.pm.src: Report correct error message
1351 for |<body></div></body>|.
1352
1353 2007-07-01 Wakaba <wakaba@suika.fam.cx>
1354
1355 * HTMLTable.pm: An error description was incorrect.
1356
1357 2007-06-30 Wakaba <wakaba@suika.fam.cx>
1358
1359 * ContentChecker.pm: Return |{term}| list.
1360
1361 2007-06-30 Wakaba <wakaba@suika.fam.cx>
1362
1363 * HTML.pm.src: HTML5 revisions 961-966 (</p>, </br>,
1364 nested <nobr>, implied </tbody>, </tfoot>, and </thead>,
1365 and <title> outside of head).
1366
1367 2007-06-30 Wakaba <wakaba@suika.fam.cx>
1368
1369 * IMTChecker.pm: Report warning for unregistered
1370 and private types/subtypes.
1371
1372 * ContentChecker.pm, HTML.pm.src, IMTChecker.pm,
1373 URIChecker.pm, HTMLTable.pm: Error messages are now
1374 consistent; they are all listed in
1375 <http://suika.fam.cx/gate/2005/sw/Whatpm%20Error%20Types>.
1376
1377 2007-06-25 Wakaba <wakaba@suika.fam.cx>
1378
1379 * ContentChecker.pm: |<img ismap>| not in |<a></a>|
1380 is now erred. |<datalist>| is implemented.
1381 Attribute checker for |<command>| and |<menu>| are
1382 added. Support for |contextmenu| global attribute
1383 is added.
1384
1385 2007-06-25 Wakaba <wakaba@suika.fam.cx>
1386
1387 * HTML.pm.src (_reset_insertion_mode): Interpretation
1388 of Step 3 has been changed.
1389
1390 2007-06-25 Wakaba <wakaba@suika.fam.cx>
1391
1392 * HTML.pm.src: Late |<html>| parse error is implemented.
1393
1394 2007-06-24 Wakaba <wakaba@suika.fam.cx>
1395
1396 * URIChecker.pm (check_iri_reference): A |decode| method name was
1397 incorrect.
1398
1399 * ContentChecker.pm: Support for the |footer| element.
1400 Check URI syntax for space-separated URI attributes.
1401 Support for the |tabindex| attribute. Support
1402 for |datetime| attribute.
1403
1404 2007-06-24 Wakaba <wakaba@suika.fam.cx>
1405
1406 * HTML.pm.src: HTML5 revision 1.144 (&#x0D;) and 1.145 (invalid
1407 character references). HTML5 revision 1.146 (white space
1408 characters before root start tag). HTML5 revision
1409 1.148 (named character references in attribute values).
1410 HTML5 revision 1.152 (<plaintext>.innerHTML get).
1411
1412 2007-06-24 Wakaba <wakaba@suika.fam.cx>
1413
1414 * HTML.pm.src: HTML5 revisions 1.142 and 1.143 (<noscript>
1415 in <head>).
1416
1417 2007-06-24 Wakaba <wakaba@suika.fam.cx>
1418
1419 * HTML.pm.src: HTML5 revision 935 (<base>, <link>, <meta>
1420 in body).
1421
1422 * ContentChecker.pm: HTML5 revision 938 (scoped="").
1423
1424 2007-06-24 Wakaba <wakaba@suika.fam.cx>
1425
1426 * HTML.pm.src: HTML5 revision 923 (matching end tag in CDATA
1427 or RCDATA in fragment parsing mode). HTML5 revision
1428 924 (<!--> and <!--->). HTML5 revision 926 (hn in hn).
1429
1430 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1431
1432 * HTML.pm.src (get_inner_html): HTML5 revision 922 (inner_html
1433 for <pre> and <textarea>).
1434
1435 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1436
1437 * HTML.pm.src: HTML5 revision 920 (<isindex>).
1438
1439 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1440
1441 * HTML.pm.src: HTML5 revision 918 (</head>, </body>, </html>).
1442
1443 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1444
1445 * HTML.pm.src: HTML5 revision 916 (</body>).
1446 HTML5 revision 917 (conforming bare &).
1447
1448 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1449
1450 * NanoDOM.pm (manakai_is_html): Setting to false did not work.
1451
1452 * HTML.pm.src: HTML5 revision 914 (</ in CDATA, RCDATA).
1453 HTML5 revision 915 (<nobr>).
1454
1455 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1456
1457 * HTML.pm.src: HTML5 revisions 908, 909, 912, and 913 (quirks mode).
1458
1459 * NanoDOM.pm (manakai_is_html, manakai_compat_mode, compat_mode):
1460 New attributes.
1461
1462 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1463
1464 * HTML.pm.src: HTML5 revisions 900, 901, 902, and 911 (<
1465 in tags).
1466
1467 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1468
1469 * .cvsignore: |Entities.html| is added.
1470
1471 * HTML.pm.src: |$entity_char| is removed and
1472 requires |Whatpm::_NamedEntityList| instead.
1473 HTML5 revision 898 (refc), except that lack of refc
1474 is parse error.
1475
1476 * mkentitylist.pl: New script.
1477
1478 * Makefile (all): |_NamedEntityList.pm| is added.
1479 (_NamedEntityList.pm, Entities.html): New rules.
1480
1481 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1482
1483 * HTML.pm.src: Parse errors immediately after U+000D
1484 were ignored and U+000D immediately following another
1485 U+000D was not converted to U+000A.
1486
1487 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1488
1489 * HTML.pm.src (set_inner_html): HTML5 revision 892 (adopt
1490 nodes before appended). Parser was not ready for NULL
1491 parse error and escape flag.
1492
1493 * NanoDOM.pm (adopt_node): New.
1494
1495 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1496
1497 * HTML.pm.src: HTML5 revision 886 (insane comment in
1498 CDATA and RCDATA). Note that current implementation
1499 is simply repeating what the spec says and it is maybe not
1500 a best way to do it.
1501
1502 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1503
1504 * HTML.pm.src: HTML5 revision 884 (</form> don't close
1505 the form element if a descendant element without implied end tag has
1506 still been open).
1507
1508 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1509
1510 * ContentChecker.pm: HTML5 revision 881 (Make |id| attribute with
1511 space characters non-conforming).
1512
1513 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1514
1515 * HTML.pm.src: An error message was incorrect.
1516 HTML5 revision 869 (C1 character references).
1517
1518 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1519
1520 * HTML.pm.src: HTML5 revision 867 (a LF at the beginning of
1521 a |textarea| is removed).
1522
1523 2007-06-05 Wakaba <wakaba@suika.fam.cx>
1524
1525 * NanoDOM.pm (get_attribute_node_ns): New method.
1526
1527 * ContentChecker.pm: |script| |async| and |defer|
1528 no longer require |src|. |async| MUST NOT be
1529 specified if |defer|. (HTML5 revision 858).
1530
1531 2007-05-30 Wakaba <wakaba@suika.fam.cx>
1532
1533 * HTML.pm.src: |<form><form>| went to inifinite loop.
1534
1535 2007-05-27 Wakaba <wakaba@suika.fam.cx>
1536
1537 * ContentChecker.pm (html): Set |is_root| (allowed
1538 as a document element) flag on.
1539 (new): Removed.
1540 (check_document): New method.
1541
1542 2007-05-27 Wakaba <wakaba@suika.fam.cx>
1543
1544 * ContentChecker.pm (thead, tfoot): Checker specifications
1545 were incorrect.
1546
1547 2007-05-27 Wakaba <wakaba@suika.fam.cx>
1548
1549 * ContentChecker.pm ($HTMLURIAttrChecker): Include
1550 error position in the |type| option of the error.
1551
1552 * HTMLTable.pm (form_table): The |$onerror| parameter
1553 is now optional. Some bugs are fixed.
1554
1555 2007-05-27 Wakaba <wakaba@suika.fam.cx>
1556
1557 * HTMLTable.pm: New module.
1558
1559 * ContentChecker.pm (table): Invoke table model error checker.
1560
1561 * NanoDOM.pm (first_child, get_attribute_ns): New.
1562
1563 2007-05-26 Wakaba <wakaba@suika.fam.cx>
1564
1565 * ContentChecker.pm ($HTMLLinkTypesAttrChecker): New checker.
1566 (link/@rel, a/@rel, area/@rel): Use new checker.
1567
1568 * Makefile (_LinkTypeList.pm, RelExtensions.html): New rules.
1569
1570 * _LinkTypeList.pm: New file.
1571
1572 * mklinktypelist.pl: New file.
1573
1574 * .cvsignore: |RelExtensions.html| added.
1575
1576 * NanoDOM.pm (child_nodes): Returns an empty array
1577 for non-child-containing node types.
1578 (text_content): New attribute.
1579
1580 2007-05-26 Wakaba <wakaba@suika.fam.cx>
1581
1582 * IMTChecker.pm: New module.
1583
1584 * ContentChecker.pm ($HTMLIMTAttrChecker): Call IMTChecker
1585 to test parameter value validity.
1586
1587 * HTML.pm.src ($style_start_tag): Attributes were
1588 discarded.
1589
1590 2007-05-25 Wakaba <wakaba@suika.fam.cx>
1591
1592 * ContentChecker.pm ($HTMLURIAttrChecker): Implemented.
1593
1594 2007-05-25 Wakaba <wakaba@suika.fam.cx>
1595
1596 * URIChecker.pm: All recommendations from RFC 3986
1597 and RFC 3987 are listed (not all testable items are checked yet).
1598
1599 2007-05-25 Wakaba <wakaba@suika.fam.cx>
1600
1601 * URIChecker.pm: New module.
1602
1603 2007-05-20 Wakaba <wakaba@suika.fam.cx>
1604
1605 * ContentChecker.pm: Now most attributes are implemented
1606 or associated to some placeholder.
1607 ($ElementDefault): Warn unknown attributes
1608 for unknown elements as "attribute not supported".
1609 ($HTMLLanguageTagAttrChecker, $HTMLMQAttrChecker): New placeholders.
1610 ($HTMLUsemapAttrChecker, $HTMLTargetAttrChecker): New checkers.
1611 (|a| attribute checker): Reimplemented.
1612
1613 2007-05-20 Wakaba <wakaba@suika.fam.cx>
1614
1615 * ContentChecker.pm ($HTMLEventHandlerAttrChecker): New placeholder.
1616 ($HTMLAttrChecker): Event handler content attributes
1617 are added.
1618 (link, embed): Required attribute is now checked.
1619 (embed): Unknown local attributes are no longer warned.
1620
1621 2007-05-20 Wakaba <wakaba@suika.fam.cx>
1622
1623 * ContentChecker.pm ($HTMLSpaceURIsAttrChecker): New placeholder.
1624 ($HTMLIMTAttrChecker): New checker.
1625 (link@rel, link@href, link@type, style@type,
1626 a@href, a@ping, a@ping, a@type, embed@src, embed@type,
1627 object@data, object@type, source@src, source@type, area@alt,
1628 area@shape, area@coords, area@href,
1629 area@ping, area@rel, area@type, script@src,
1630 script@defer, script@async, script@type): Checkers added.
1631
1632 2007-05-20 Wakaba <wakaba@suika.fam.cx>
1633
1634 * ContentChecker.pm: Descendant checking was incorrect.
1635
1636 2007-05-19 Wakaba <wakaba@suika.fam.cx>
1637
1638 * ContentChecker.pm: Support |xml:*| and |xmlns:*|
1639 attributes. Report an error if |Element.prefix|
1640 is |xmlns|.
1641
1642 * NanoDOM.pm (prefix): New attribute.
1643
1644 2007-05-19 Wakaba <wakaba@suika.fam.cx>
1645
1646 * HTML.pm.src: In |main| phase, |in body| insertion
1647 mode, action for |<iframe>| was missing.
1648
1649 2007-05-19 Wakaba <wakaba@suika.fam.cx>
1650
1651 * ContentChecker.pm: Support for many of HTML5 elements.
1652 ($GetHTMLNonNegativeIntegerAttrChecker): New.
1653
1654 2007-05-19 Wakaba <wakaba@suika.fam.cx>
1655
1656 * ContentChecker.pm: Support for most elements up to |progress|.
1657 ($HTMLURIAttrChecker): Placeholder.
1658 ($HTMLIntegerAttrChecker, $GetHTMLFloatingPointNumberAttrChecker):
1659 New.
1660
1661 2007-05-19 Wakaba <wakaba@suika.fam.cx>
1662
1663 * ContentChecker.pm: Attribute checkers
1664 for global attributes, |html|, |base|, |style|, and |meta|.
1665
1666 * NanoDOM.pm (insert_before): Weaken reference
1667 to the parent node.
1668 (Attr::new): Set |owner_element| attribute.
1669 (namespace_uri, manakai_local_name): New attribute implementations.
1670 (owner_element): New attribute.
1671
1672 2007-05-19 Wakaba <wakaba@suika.fam.cx>
1673
1674 * ContentChecker.pm ($AttrChecker, $HTMLAttrChecker,
1675 $AnyChecker->{attr_checker}, $HTMLAttrsChecker,
1676 $Element->{$HTML_NS}->{''}): New.
1677 (check_element): Invoke attrs_checker for each element.
1678
1679 2007-05-13 Wakaba <wakaba@suika.fam.cx>
1680
1681 * ContentChecker.pm: Don't use |manakai_element_type_match|.
1682
1683 2007-05-13 Wakaba <wakaba@suika.fam.cx>
1684
1685 * ContentChecker.pm: Use hashs rather than lists for
1686 element type testings.
1687
1688 2007-05-13 Wakaba <wakaba@suika.fam.cx>
1689
1690 * ContentChecker.pm: Don't generate duplicate
1691 error when an element type is put in the "minus" list
1692 and the element type is not allowed explicitly in the particular
1693 element content model.
1694 (html:a checker): New checker.
1695 (html:details, html:datagrid): New checkers.
1696 (html:legend): New checker.
1697
1698 2007-05-13 Wakaba <wakaba@suika.fam.cx>
1699
1700 * ContentChecker.pm (html:li checker): Implemented.
1701
1702 2007-05-13 Wakaba <wakaba@suika.fam.cx>
1703
1704 * ContentChecker.pm ($HTMLInlineOrStriclyInlineChecker): New
1705 checker.
1706 (html:dd checker): New checker.
1707 (html:q, html:em, html:strong, html:small,
1708 html:m, html:dfn, html:code, html:samp, html:span): New checkers.
1709
1710 2007-05-13 Wakaba <wakaba@suika.fam.cx>
1711
1712 * ContentChecker.pm ($AnyChecker): Renamed
1713 from |$ElementDefault->{checker}|.
1714 ($ElementDefault->{checker}): Throw an error that
1715 the element type is not supported by the checker.
1716 ($HTMLMetadataElement): |html:base| was missing.
1717 ($HTMLEmptyChecker): Don't throw an error
1718 for inter-element whitespace nodes.
1719 (html:html checker): Errors were not
1720 thrown even if |html:head| and/or |html:body|
1721 children were missing.
1722 (html:head checker): An error was not
1723 thrown if <meta charset> appered after other
1724 elements.
1725
1726 2007-05-05 Wakaba <wakaba@suika.fam.cx>
1727
1728 * ContentChecker.pm: |footer|, |video|, |audio|, |script|,
1729 and |noscript| elements are implemented.
1730 (new): New method.
1731
1732 2007-05-04 Wakaba <wakaba@suika.fam.cx>
1733
1734 * ContentChecker.pm: New module.
1735
1736 2007-05-04 Wakaba <wakaba@suika.fam.cx>
1737
1738 * NanoDOM.pm (manakai_parent_element,
1739 document_element, manakai_local_name,
1740 manakai_element_type_match): New method.
1741
1742 2007-05-03 Wakaba <wakaba@suika.fam.cx>
1743
1744 * HTML.pm.src: Replace decimal and hexadecimal numeric
1745 entities in C1 range using Windows-1252 mapping. Bare LF
1746 did not count as new line for error reporting.
1747
1748 2007-05-02 Wakaba <wakaba@suika.fam.cx>
1749
1750 * NanoDOM.pm (DOMImplementation): New class.
1751 (append_child): Weaken the |parent_node| reference.
1752 (create_element_ns, Element new): Set the |owner_document|
1753 reference.
1754 (implementation): New attribute.
1755 (owner_document, local_name, namespace_uri): New attributes.
1756
1757 * HTML.pm.src (parse_string): Line and column numbers
1758 are now provided to error handler.
1759 (!!!parse-error): Short descriptions are added.
1760 (_construct_tree): Split into three methods; support
1761 for innerHTML mode.
1762 (set_inner_html): New method.
1763
1764 2007-05-01 Wakaba <wakaba@suika.fam.cx>
1765
1766 * NanoDOM.html: Documentation is added.
1767
1768 * HTML.pod, ContentType.html: Documentation is revised.
1769
1770 * .cvsignore: Pod2html temporary files are added.
1771
1772 * Makefile: Make |NanoDOM.html|.
1773
1774 2007-05-01 Wakaba <wakaba@suika.fam.cx>
1775
1776 * HTML.pm.src (parse_string): New method.
1777 (get_inner_html): Renamed from |inner_html|.
1778
1779 * Makefile: A rule for |HTML.html| is added.
1780
1781 * HTML.pod: New documentation.
1782
1783 2007-05-01 Wakaba <wakaba@suika.fam.cx>
1784
1785 * NanoDOM.pm (last_child, previous_sibling): New attributes.
1786 (clone_node): Attribute nodes were not completely copied.
1787
1788 * HTML.pm.src: Many bugs are fixed.
1789
1790 2007-04-30 Wakaba <wakaba@suika.fam.cx>
1791
1792 * HTML.pm.src: Some typos are fixed.
1793
1794 2007-04-30 Wakaba <wakaba@suika.fam.cx>
1795
1796 * mkhtmlparser.pl, Makefile: References to the |HTML-consume-entity.src|
1797 are removed.
1798
1799 * HTML.pm.src: Tokenizer's handling on named entities are rewritten.
1800
1801 * HTML-consume-entity.src: Removed.
1802
1803 2007-04-30 Wakaba <wakaba@suika.fam.cx>
1804
1805 * HTML.pm.src: Tokenizer's handling on hexadecimal
1806 numeric entities are rewritten.
1807
1808 2007-04-30 Wakaba <wakaba@suika.fam.cx>
1809
1810 * HTML.pm.src: Some tokenizer bugs are fixed.
1811
1812 2007-04-30 Wakaba <wakaba@suika.fam.cx>
1813
1814 * HTML.pm.src: The tree construction stage is implemented.
1815
1816 * mkhtmlparser.pl: New macros are added.
1817
1818 2007-04-28 Wakaba <wakaba@suika.fam.cx>
1819
1820 * ContentType.pm: A note on bug in the specification
1821 is removed since it's been now fixed.
1822
1823 * .cvsignore: New file.
1824
1825 2007-04-28 Wakaba <wakaba@suika.fam.cx>
1826
1827 * HTML.pm.src, HTML-consume-entity.src: New files.
1828
1829 * Makefile (HTML.pm): New rule.
1830
1831 * mkhtmlparser.pl: New script.
1832
1833 2007-04-25 Wakaba <wakaba@suika.fam.cx>
1834
1835 * Makefile: New file.
1836
1837 2007-04-24 Wakaba <wakaba@suika.fam.cx>
1838
1839 * ContentType.pm: An error in pod is fixed.
1840
1841 2007-04-24 Wakaba <wakaba@suika.fam.cx>
1842
1843 * ContentType.pm: Documentation is added.
1844
1845 2007-04-24 Wakaba <wakaba@suika.fam.cx>
1846
1847 * ContentType.pm: New Perl module.
1848
1849 * ChangeLog: New file.
1850
1851

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24