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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.299 - (hide annotations) (download)
Sat Sep 13 12:25:44 2008 UTC (16 years, 10 months ago) by wakaba
Branch: MAIN
Changes since 1.298: +4 -0 lines
++ whatpm/Whatpm/ChangeLog	13 Sep 2008 12:25:41 -0000
	* HTML.pm.src: Check points added to newly added branches.

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24