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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.365 - (show annotations) (download)
Sat Dec 6 10:05:23 2008 UTC (16 years, 7 months ago) by wakaba
Branch: MAIN
Changes since 1.364: +5 -0 lines
++ whatpm/Whatpm/ChangeLog	6 Dec 2008 10:05:14 -0000
	* URIChecker.pm: Bug fix: It did not work unless
	Message::DOM::DOMImplementation has been |require|d.

2008-12-06  Wakaba  <wakaba@suika.fam.cx>

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24