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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.344 - (hide annotations) (download)
Sat Oct 4 12:20:35 2008 UTC (16 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.343: +5 -0 lines
++ whatpm/t/ChangeLog	4 Oct 2008 12:20:16 -0000
	* tree-test-form.dat: New test data file.

	* HTML-tree.t: |tree-test-form.dat| added.

	* tree-test-1.dat: Test results related to <option> and <optgroup>
	are updated (cf. HTML5 revision 2128).

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


	* HTML-tree.t: |tree-test-foreign.dat| added.
++ whatpm/Whatpm/ChangeLog	4 Oct 2008 12:01:10 -0000
	* HTML.pm.src: Support for <option> and <optgroup> in body (HTML5
	revisions 1731 and 2128).

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24