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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.283 - (show annotations) (download)
Sat Aug 30 13:43:50 2008 UTC (16 years, 10 months ago) by wakaba
Branch: MAIN
Changes since 1.282: +7 -0 lines
++ whatpm/t/ChangeLog	30 Aug 2008 13:30:24 -0000
	* tokenizer-test-1.dat: '"' and "'" at the end of attribute
	name (after another attribute) now raise parse error (HTML5
	revision 2123).  Empty unquoted attribute is no
	longer allowed (HTML5 revision 2122).

	* HTML-tokenizer.t: Hash keys were not sorted when dumped.

2008-08-30  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/ChangeLog	30 Aug 2008 13:43:44 -0000
	* HTML.pm.src: '"' and "'" at the end of attribute
	name (after another attribute) now raise parse error (HTML5
	revision 2123).  Empty unquoted attribute values are no
	longer allowed (HTML5 revision 2122).

2008-08-30  Wakaba  <wakaba@suika.fam.cx>

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24