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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.376 - (show annotations) (download)
Sat Jul 25 03:38:41 2009 UTC (16 years, 7 months ago) by wakaba
Branch: MAIN
Changes since 1.375: +6 -0 lines
++ whatpm/Whatpm/ChangeLog	25 Jul 2009 03:38:29 -0000
2009-07-25  Wakaba  <wakaba@suika.fam.cx>

	* HTML.pm.src (set_inner_html): The fragment parsing algorithm
	inherits the document quirksness flag of the main document (HTML5
	revision 2935).

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24