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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.308 - (hide annotations) (download)
Sun Sep 14 13:09:00 2008 UTC (16 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.307: +9 -0 lines
++ whatpm/Whatpm/ChangeLog	14 Sep 2008 13:08:56 -0000
	* HTML.pm.src (parse_char_stream): Make |set_next_char|
	invoke |manakai_read_until|, not only |read|, where
	possible, to decrease the number of |read| method calls.

	* mkhtmlparser.pl: Related changes to the aforementioned
	modification.

2008-09-14  Wakaba  <wakaba@suika.fam.cx>

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24