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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.359 - (show annotations) (download)
Sun Oct 19 06:14:56 2008 UTC (17 years, 4 months ago) by wakaba
Branch: MAIN
Changes since 1.358: +5 -1 lines
++ whatpm/t/ChangeLog	19 Oct 2008 06:14:42 -0000
2008-10-19  Wakaba  <wakaba@suika.fam.cx>

	* XML-Parser.t: "xml/entities-1.dat" and "xml/entities-2.dat"
	added.  Support for the "#entities" directive.

++ whatpm/t/xml/ChangeLog	19 Oct 2008 06:11:59 -0000
	* entities-1.dat, entities-2.dat: New test data files.

2008-10-19  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/ChangeLog	19 Oct 2008 06:12:27 -0000
2008-10-19  Wakaba  <wakaba@suika.fam.cx>

	* NanoDOM.pm (notation_name): New attribute.

	* NanoDOM.pm (public_id, system_id): New attributes.a
++ whatpm/Whatpm/HTML/ChangeLog	19 Oct 2008 06:13:03 -0000
	* Dumper.pm: Dump text content of Entity nodes.

	* Tokenizer.pm.src: Support for <!ENTITY ... NDATA>.

2008-10-19  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/XML/ChangeLog	19 Oct 2008 06:14:05 -0000
2008-10-19  Wakaba  <wakaba@suika.fam.cx>

	* Parser.pm.src (_tree_in_subset): General and parameter entities
	implemented.

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24