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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.307 - (show annotations) (download)
Sun Sep 14 11:57:41 2008 UTC (17 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.306: +5 -0 lines
++ whatpm/Whatpm/ChangeLog	14 Sep 2008 11:56:24 -0000
	* HTML.pm.src: Use |read| instead of |getc|.  |set_inner_html|
	would report character error from now.

2008-09-14  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/Charset/ChangeLog	14 Sep 2008 11:57:38 -0000
	* DecodeHandle.pm (CharString onerror): New method.

	* UnicodeString.pm (read): New.
	(getc): Removed.
	(manakai_read_until): Checking operation implemented.

2008-09-14  Wakaba  <wakaba@suika.fam.cx>

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

[email protected]
ViewVC Help
Powered by ViewVC 1.1.24