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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.374 - (show annotations) (download)
Thu Jul 2 23:15:37 2009 UTC (16 years ago) by wakaba
Branch: MAIN
Changes since 1.373: +5 -0 lines
++ whatpm/t/ChangeLog	2 Jul 2009 23:15:00 -0000

	* tree-test-1.dat: Added test on <keygen> in <select> (c.f. HTML5
	revision 3163).

2009-07-03  Wakaba  <wakaba@suika.fam.cx>
++ whatpm/Whatpm/ChangeLog	2 Jul 2009 23:15:28 -0000
	* HTML.pm.src: <kegten> breaks out of <select> (HTML5 revision
	3163).

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24