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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.296 - (hide annotations) (download)
Sat Sep 13 09:02:28 2008 UTC (16 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.295: +8 -0 lines
++ whatpm/Whatpm/ChangeLog	13 Sep 2008 09:02:17 -0000
	* HTML.pm: "Consume a character reference" algorithm is
	now implemented as a tokenizer's state, rather than
	a method, with minimum changes (more changes will
	be made, in due course).  "Bogus comment state"'s inner
	loop gets removed.

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24