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

Diff of /markup/html/whatpm/Whatpm/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

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

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.285

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24