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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.388 - (show annotations) (download)
Sun Aug 30 03:40:50 2009 UTC (16 years, 6 months ago) by wakaba
Branch: MAIN
Changes since 1.387: +5 -0 lines
++ whatpm/t/dom-conformance/ChangeLog	30 Aug 2009 03:35:02 -0000
2009-08-30  Wakaba  <wakaba@suika.fam.cx>

	* xml-global.dat: Added a test of |xml:lang| attribute on a
	foreign element in an HTML document (HTML5 revision 3697).

++ whatpm/Whatpm/ChangeLog	30 Aug 2009 03:40:20 -0000
2009-08-30  Wakaba  <wakaba@suika.fam.cx>

	* ContentChecker.pm: Allow |xml:lang| in HTML document if the
	owner element is not an HTML element (HTML5 revision 3697).

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24