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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.373 - (show annotations) (download)
Thu Jul 2 22:11:51 2009 UTC (16 years, 8 months ago) by wakaba
Branch: MAIN
Changes since 1.372: +5 -0 lines
++ whatpm/Whatpm/ChangeLog	2 Jul 2009 22:11:35 -0000
	* HTML.pm.src: Don't change encoding to UTF-8 if the input
	encoding is UTF-16 (HTML5 revision 3204).

2009-07-03  Wakaba  <wakaba@suika.fam.cx>

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24