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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.375 - (show annotations) (download)
Sun Jul 5 05:13:12 2009 UTC (16 years ago) by wakaba
Branch: MAIN
Changes since 1.374: +5 -0 lines
++ whatpm/t/ChangeLog	5 Jul 2009 05:12:28 -0000
	* tree-test-1.dat: Added tests for <table> in <p> (c.f. HTML5
	revision 3132).

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

++ whatpm/Whatpm/ChangeLog	5 Jul 2009 05:13:02 -0000
2009-07-05  Wakaba  <wakaba@suika.fam.cx>

	* HTML.pm.src (_tree_construction_main): Put |table| in |p| in
	quirks mode (The Hixie Quirk, HTML5 revision 3132).

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24