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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.383 - (show annotations) (download)
Sun Aug 16 05:57:24 2009 UTC (15 years, 11 months ago) by wakaba
Branch: MAIN
Changes since 1.382: +5 -0 lines
++ whatpm/Whatpm/ChangeLog	16 Aug 2009 05:57:12 -0000
	* HTML.pm.src: An <hn> start tag in an <hn> element should close
	the earlier element (HTML5 revision 2501).

2009-08-16  Wakaba  <wakaba@suika.fam.cx>

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24