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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.366 - (show annotations) (download)
Sat Dec 6 12:20:08 2008 UTC (15 years, 11 months ago) by wakaba
Branch: MAIN
Changes since 1.365: +5 -0 lines
++ whatpm/t/ChangeLog	6 Dec 2008 12:19:49 -0000
	* ContentChecker.t: Added |dom-conformance/html-form-datalist.dat|.

2008-12-06  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/t/dom-conformance/ChangeLog	6 Dec 2008 12:19:28 -0000
	* html-form-datalist.dat: New test data file.

2008-12-06  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/ChangeLog	6 Dec 2008 12:18:34 -0000
	* ContentChecker.pm (check_element): Added support for "no
	referenced datalist" error.

2008-12-06  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/ContentChecker/ChangeLog	6 Dec 2008 12:18:53 -0000
	* HTML.pm: Implemented <input list>.

2008-12-06  Wakaba  <wakaba@suika.fam.cx>

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24