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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.310 - (hide annotations) (download)
Mon Sep 15 02:54:12 2008 UTC (16 years, 7 months ago) by wakaba
Branch: MAIN
Changes since 1.309: +8 -0 lines
++ whatpm/Whatpm/ChangeLog	15 Sep 2008 02:54:04 -0000
2008-09-15  Wakaba  <wakaba@suika.fam.cx>

	* ContentChecker.pm: Don't call |loda_ns_module|
	for null-namespace elements/attributes.

	* HTML.pm.src: Fact out $disallowed_control_chars
	as a hash.

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24