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

Legend:
Removed from v.1.64  
changed lines
  Added in v.1.348

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24