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

Legend:
Removed from v.1.25  
changed lines
  Added in v.1.320

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24