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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.371 - (show annotations) (download)
Sun Jun 28 11:03:06 2009 UTC (16 years ago) by wakaba
Branch: MAIN
Changes since 1.370: +5 -0 lines
++ whatpm/t/ChangeLog	28 Jun 2009 11:02:32 -0000
	* tree-test-1.dat, tree-test-flow.dat: Updated test results on
	isindex (c.f. HTML5 revision 3236).

2009-06-28  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/ChangeLog	28 Jun 2009 11:02:59 -0000
2009-06-28  Wakaba  <wakaba@suika.fam.cx>

	* HTML.pm.src: |isindex| should no longer generate |p| element
	node (HTML5 revision 3236).

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24