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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.378 - (show annotations) (download)
Sun Jul 26 09:11:18 2009 UTC (16 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.377: +5 -0 lines
++ whatpm/t/ChangeLog	26 Jul 2009 09:11:02 -0000
2009-07-26  Wakaba  <wakaba@suika.fam.cx>

	* tree-test-2.dat: Fixed some wrong test results.

	* tree-test-form.dat, tree-test-phrasing.dat: Tests on </body>
	after start tags of end-tag-optional element (cf. HTML5 revision
	2806).

++ whatpm/Whatpm/ChangeLog	26 Jul 2009 09:09:56 -0000
2009-07-26  Wakaba  <wakaba@suika.fam.cx>

	* HTML.pm.src: </rt>, </rp>, </option>, </optgroup> become
	optional before </body> (HTML5 revision 2806).

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24