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

Legend:
Removed from v.1.17  
changed lines
  Added in v.1.391

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24