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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.384 - (show annotations) (download)
Sun Aug 16 06:26:14 2009 UTC (16 years, 10 months ago) by wakaba
Branch: MAIN
Changes since 1.383: +6 -0 lines
++ whatpm/t/ChangeLog	16 Aug 2009 06:25:35 -0000
	* tree-test-form.dat: Added tests for <script> elements in
	<select> and <select> in <table> (HTML5 revision 2500).

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

++ whatpm/Whatpm/ChangeLog	16 Aug 2009 06:26:04 -0000
	* HTML.pm.src: Added support for <script> element in the "in
	select" and "in select in table" insertion modes (HTML5 revision
	2500).

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24