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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.390 - (show annotations) (download)
Sat Sep 5 13:42:52 2009 UTC (15 years, 2 months ago) by wakaba
Branch: MAIN
Changes since 1.389: +6 -0 lines
++ whatpm/Whatpm/ChangeLog	5 Sep 2009 13:42:33 -0000
	* HTML.pm.src: Moved the "in table text" insertion mode code up
	such that it does also work as specced in HTML5 in the remaining
	cases (HTML5 revision 3382).

2009-09-05  Wakaba  <wakaba@suika.fam.cx>

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24