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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.367 - (show annotations) (download)
Thu Dec 11 03:18:17 2008 UTC (15 years, 10 months ago) by wakaba
Branch: MAIN
Changes since 1.366: +4 -0 lines
++ whatpm/Whatpm/ChangeLog	11 Dec 2008 03:17:21 -0000
2008-12-11  Wakaba  <wakaba@suika.fam.cx>

	* URIChecker.pm: Some of |pos_end| values were wrong.

++ whatpm/Whatpm/ContentChecker/ChangeLog	11 Dec 2008 03:18:04 -0000
2008-12-11  Wakaba  <wakaba@suika.fam.cx>

	* HTML.pm: Added support for |pattern| attributes.

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24