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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.382 - (show annotations) (download)
Sun Aug 16 05:15:09 2009 UTC (16 years, 6 months ago) by wakaba
Branch: MAIN
Changes since 1.381: +6 -0 lines
++ whatpm/t/ChangeLog	16 Aug 2009 05:12:20 -0000
	* tree-test-1.dat: Changed test results for </br> in the after
	head parsing mode (HTML5 revision 2586).

2009-08-16  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/ChangeLog	16 Aug 2009 05:13:22 -0000
	* HTML.pm.src: The </br> end tags before the <body> start tag
	should equally survive as the first br element child of the body
	element (HTML5 revision 2586).

2009-08-16  Wakaba  <wakaba@suika.fam.cx>

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24