/[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.2 by wakaba, Wed May 2 13:44:33 2007 UTC revision 1.83 by wakaba, Sat Jul 21 11:46:40 2007 UTC
# Line 1  Line 1 
1    2007-07-21  Wakaba  <wakaba@suika.fam.cx>
2    
3            * HTML.pm.src: The "trailing end" insertion mode
4            is split into "after html body" and "after html frameset"
5            insertion modes.  Their codes are merged with "after body"
6            and "after frameset" codes.  |$previous_insertion_mode|
7            has been removed.  "after frameset" code is
8            merged with "in frameset" code.
9    
10    2007-07-21  Wakaba  <wakaba@suika.fam.cx>
11    
12            * HTML.pm.src: The "before head" insertion mode is
13            merged with the "in head" insertion mode.
14    
15    2007-07-21  Wakaba  <wakaba@suika.fam.cx>
16    
17            * HTML.pm.src: Cases in "in head" insertion mode are
18            reorganized.
19    
20    2007-07-21  Wakaba  <wakaba@suika.fam.cx>
21    
22            * HTML.pm.src: Some cases in "in table" insertion mode
23            are merged.
24    
25    2007-07-21  Wakaba  <wakaba@suika.fam.cx>
26    
27            * HTML.pm.src: The "in row" insertion mode is merged
28            with "in table" insertion mode.
29    
30    2007-07-21  Wakaba  <wakaba@suika.fam.cx>
31    
32            * HTML.pm.src: The "in table" and "in table body" insertion
33            modes are merged.
34    
35    2007-07-21  Wakaba  <wakaba@suika.fam.cx>
36    
37            * HTML.pm.src: There is no "in table head" or "in table foot"
38            insertion mode!
39    
40    2007-07-21  Wakaba  <wakaba@suika.fam.cx>
41    
42            * HTML.pm.src: |<noframes>| "in frameset" and "in noframes"
43            now directly invoke the handler.
44    
45    2007-07-21  Wakaba  <wakaba@suika.fam.cx>
46    
47            * HTML.pm.src: Codes for "in cell" insertion mode
48            is merged to the "in body" insertion mode code.
49    
50    2007-07-21  Wakaba  <wakaba@suika.fam.cx>
51    
52            * HTML.pm.src: Codes for "in body" and "in caption"
53            insertion modes are merged.
54    
55    2007-07-21  Wakaba  <wakaba@suika.fam.cx>
56    
57            * HTML.pm.src: Two |!!!next-token|s were missing.
58    
59    2007-07-21  Wakaba  <wakaba@suika.fam.cx>
60    
61            * HTML.pm.src: Use numeric constant for |{content_mode}|
62            instead of string constant for |{content_model_flag}|.
63    
64    2007-07-21  Wakaba  <wakaba@suika.fam.cx>
65    
66            * HTML.pm.src: Add the name of the attribute
67            to the "duplicate attribute" error.
68    
69    2007-07-17  Wakaba  <wakaba@suika.fam.cx>
70    
71            * ContentChecker.pm: Return the |class| node list.
72    
73    2007-07-17  Wakaba  <wakaba@suika.fam.cx>
74    
75            * ContentChecker.pm: Return the |id| node list.
76    
77            * HTML.pm.src: A typo is fixed.
78    
79    2007-07-16  Wakaba  <wakaba@suika.fam.cx>
80    
81            * ContentChecker.pm: Drop wrong |level => 'error'| specification
82            from "in HTML:xml:lang" error.  Character position
83            is now the last part of the error type in the URI error
84            description.  Report "unsupported" status for language
85            tags, media queries, script codes, and style sheets.
86    
87    2007-07-16  Wakaba  <wakaba@suika.fam.cx>
88    
89            * ContentChecker.pm: Report error if |xml:lang|
90            in HTML, |lang| in XML, |xmlns| in XML, and |meta| |charset|
91            in XML.
92    
93            * NanoDOM.pm (Attr.owner_document): New attribute.
94    
95    2007-07-16  Wakaba  <wakaba@suika.fam.cx>
96    
97            * HTML.pm.src: The character immediately following
98            a bare |hcro| was discarded.  Fix handling of
99            entity references in attribute values.
100    
101    2007-07-16  Wakaba  <wakaba@suika.fam.cx>
102    
103            * HTML.pm.src (main and trailin end phases): Token
104            types |DOCTYPE|, |comment|, |end-of-file|, and |<html>| are
105            factored out.  Error types |in html:#DOCTYPE|
106            and |after html:#DOCTYPE| are merged
107            into |DOCTYPE in the middle|.  |</frameset>|
108            in fragment parsing mode changed the
109            insertion mode.
110    
111    2007-07-16  Wakaba  <wakaba@suika.fam.cx>
112    
113            * HTML.pm.src: |$phase| has been removed; The |trailing end|
114            phase is now an insertion mode.  Treatments for white
115            space character tokens were incorrect for some
116            insertion modes.  An old |meta| case was not removed.
117    
118    2007-07-16  Wakaba  <wakaba@suika.fam.cx>
119    
120            * HTML.pm.src: |meta| charset declaration extraction
121            implemented (but changing the encoding is not yet:-).
122    
123    2007-07-15  Wakaba  <wakaba@suika.fam.cx>
124    
125            * Charset/: New directory.
126    
127    2007-07-15  Wakaba  <wakaba@suika.fam.cx>
128    
129            * H2H.pm: New Perl module (created from
130            manakai's H2H.dis).
131    
132    2007-07-15  Wakaba  <wakaba@suika.fam.cx>
133    
134            * XMLSerializer.pm: New Perl module (created from
135            manakai's SimpleLS.dis).
136    
137    2007-07-07  Wakaba  <wakaba@suika.fam.cx>
138    
139            * HTML.pm.src: |<!---x-->| was not processed correctly.
140    
141    2007-07-01  Wakaba  <wakaba@suika.fam.cx>
142    
143            * HTML.pm.src: Report correct error message
144            for |<body></div></body>|.
145    
146    2007-07-01  Wakaba  <wakaba@suika.fam.cx>
147    
148            * HTMLTable.pm: An error description was incorrect.
149    
150    2007-06-30  Wakaba  <wakaba@suika.fam.cx>
151    
152            * ContentChecker.pm: Return |{term}| list.
153    
154    2007-06-30  Wakaba  <wakaba@suika.fam.cx>
155    
156            * HTML.pm.src: HTML5 revisions 961-966 (</p>, </br>,
157            nested <nobr>, implied </tbody>, </tfoot>, and </thead>,
158            and <title> outside of head).
159    
160    2007-06-30  Wakaba  <wakaba@suika.fam.cx>
161    
162            * IMTChecker.pm: Report warning for unregistered
163            and private types/subtypes.
164    
165            * ContentChecker.pm, HTML.pm.src, IMTChecker.pm,
166            URIChecker.pm, HTMLTable.pm: Error messages are now
167            consistent; they are all listed in
168            <http://suika.fam.cx/gate/2005/sw/Whatpm%20Error%20Types>.
169    
170    2007-06-25  Wakaba  <wakaba@suika.fam.cx>
171    
172            * ContentChecker.pm: |<img ismap>| not in |<a></a>|
173            is now erred.  |<datalist>| is implemented.
174            Attribute checker for |<command>| and |<menu>| are
175            added.  Support for |contextmenu| global attribute
176            is added.
177    
178    2007-06-25  Wakaba  <wakaba@suika.fam.cx>
179    
180            * HTML.pm.src (_reset_insertion_mode): Interpretation
181            of Step 3 has been changed.
182    
183    2007-06-25  Wakaba  <wakaba@suika.fam.cx>
184    
185            * HTML.pm.src: Late |<html>| parse error is implemented.
186    
187    2007-06-24  Wakaba  <wakaba@suika.fam.cx>
188    
189            * URIChecker.pm (check_iri_reference): A |decode| method name was
190            incorrect.
191    
192            * ContentChecker.pm: Support for the |footer| element.
193            Check URI syntax for space-separated URI attributes.
194            Support for the |tabindex| attribute.  Support
195            for |datetime| attribute.
196    
197    2007-06-24  Wakaba  <wakaba@suika.fam.cx>
198    
199            * HTML.pm.src: HTML5 revision 1.144 (&#x0D;) and 1.145 (invalid
200            character references).  HTML5 revision 1.146 (white space
201            characters before root start tag).  HTML5 revision
202            1.148 (named character references in attribute values).
203            HTML5 revision 1.152 (<plaintext>.innerHTML get).
204    
205    2007-06-24  Wakaba  <wakaba@suika.fam.cx>
206    
207            * HTML.pm.src: HTML5 revisions 1.142 and 1.143 (<noscript>
208            in <head>).
209    
210    2007-06-24  Wakaba  <wakaba@suika.fam.cx>
211    
212            * HTML.pm.src: HTML5 revision 935 (<base>, <link>, <meta>
213            in body).
214    
215            * ContentChecker.pm: HTML5 revision 938 (scoped="").
216    
217    2007-06-24  Wakaba  <wakaba@suika.fam.cx>
218    
219            * HTML.pm.src: HTML5 revision 923 (matching end tag in CDATA
220            or RCDATA in fragment parsing mode).  HTML5 revision
221            924 (<!--> and <!--->).  HTML5 revision 926 (hn in hn).
222    
223    2007-06-23  Wakaba  <wakaba@suika.fam.cx>
224    
225            * HTML.pm.src (get_inner_html): HTML5 revision 922 (inner_html
226            for <pre> and <textarea>).
227    
228    2007-06-23  Wakaba  <wakaba@suika.fam.cx>
229    
230            * HTML.pm.src: HTML5 revision 920 (<isindex>).
231    
232    2007-06-23  Wakaba  <wakaba@suika.fam.cx>
233    
234            * HTML.pm.src: HTML5 revision 918 (</head>, </body>, </html>).
235    
236    2007-06-23  Wakaba  <wakaba@suika.fam.cx>
237    
238            * HTML.pm.src: HTML5 revision 916 (</body>).
239            HTML5 revision 917 (conforming bare &).
240    
241    2007-06-23  Wakaba  <wakaba@suika.fam.cx>
242    
243            * NanoDOM.pm (manakai_is_html): Setting to false did not work.
244    
245            * HTML.pm.src: HTML5 revision 914 (</ in CDATA, RCDATA).
246            HTML5 revision 915 (<nobr>).
247    
248    2007-06-23  Wakaba  <wakaba@suika.fam.cx>
249    
250            * HTML.pm.src: HTML5 revisions 908, 909, 912, and 913 (quirks mode).
251            
252            * NanoDOM.pm (manakai_is_html, manakai_compat_mode, compat_mode):
253            New attributes.
254    
255    2007-06-23  Wakaba  <wakaba@suika.fam.cx>
256    
257            * HTML.pm.src: HTML5 revisions 900, 901, 902, and 911 (<
258            in tags).
259    
260    2007-06-23  Wakaba  <wakaba@suika.fam.cx>
261    
262            * .cvsignore: |Entities.html| is added.
263    
264            * HTML.pm.src: |$entity_char| is removed and
265            requires |Whatpm::_NamedEntityList| instead.
266            HTML5 revision 898 (refc), except that lack of refc
267            is parse error.
268    
269            * mkentitylist.pl: New script.
270    
271            * Makefile (all): |_NamedEntityList.pm| is added.
272            (_NamedEntityList.pm, Entities.html): New rules.
273    
274    2007-06-23  Wakaba  <wakaba@suika.fam.cx>
275    
276            * HTML.pm.src: Parse errors immediately after U+000D
277            were ignored and U+000D immediately following another
278            U+000D was not converted to U+000A.
279    
280    2007-06-23  Wakaba  <wakaba@suika.fam.cx>
281    
282            * HTML.pm.src (set_inner_html): HTML5 revision 892 (adopt
283            nodes before appended).  Parser was not ready for NULL
284            parse error and escape flag.
285    
286            * NanoDOM.pm (adopt_node): New.
287    
288    2007-06-23  Wakaba  <wakaba@suika.fam.cx>
289    
290            * HTML.pm.src: HTML5 revision 886 (insane comment in
291            CDATA and RCDATA).  Note that current implementation
292            is simply repeating what the spec says and it is maybe not
293            a best way to do it.
294    
295    2007-06-23  Wakaba  <wakaba@suika.fam.cx>
296    
297            * HTML.pm.src: HTML5 revision 884 (</form> don't close
298            the form element if a descendant element without implied end tag has
299            still been open).
300    
301    2007-06-23  Wakaba  <wakaba@suika.fam.cx>
302    
303            * ContentChecker.pm: HTML5 revision 881 (Make |id| attribute with
304            space characters non-conforming).
305    
306    2007-06-23  Wakaba  <wakaba@suika.fam.cx>
307    
308            * HTML.pm.src: An error message was incorrect.
309            HTML5 revision 869 (C1 character references).
310            
311    2007-06-23  Wakaba  <wakaba@suika.fam.cx>
312    
313            * HTML.pm.src: HTML5 revision 867 (a LF at the beginning of
314            a |textarea| is removed).
315    
316    2007-06-05  Wakaba  <wakaba@suika.fam.cx>
317    
318            * NanoDOM.pm (get_attribute_node_ns): New method.
319    
320            * ContentChecker.pm: |script| |async| and |defer|
321            no longer require |src|.  |async| MUST NOT be
322            specified if |defer|.  (HTML5 revision 858).
323    
324    2007-05-30  Wakaba  <wakaba@suika.fam.cx>
325    
326            * HTML.pm.src: |<form><form>| went to inifinite loop.
327    
328    2007-05-27  Wakaba  <wakaba@suika.fam.cx>
329    
330            * ContentChecker.pm (html): Set |is_root| (allowed
331            as a document element) flag on.
332            (new): Removed.
333            (check_document): New method.
334    
335    2007-05-27  Wakaba  <wakaba@suika.fam.cx>
336    
337            * ContentChecker.pm (thead, tfoot): Checker specifications
338            were incorrect.
339    
340    2007-05-27  Wakaba  <wakaba@suika.fam.cx>
341    
342            * ContentChecker.pm ($HTMLURIAttrChecker): Include
343            error position in the |type| option of the error.
344    
345            * HTMLTable.pm (form_table): The |$onerror| parameter
346            is now optional.  Some bugs are fixed.
347    
348    2007-05-27  Wakaba  <wakaba@suika.fam.cx>
349    
350            * HTMLTable.pm: New module.
351    
352            * ContentChecker.pm (table): Invoke table model error checker.
353    
354            * NanoDOM.pm (first_child, get_attribute_ns): New.
355    
356    2007-05-26  Wakaba  <wakaba@suika.fam.cx>
357    
358            * ContentChecker.pm ($HTMLLinkTypesAttrChecker): New checker.
359            (link/@rel, a/@rel, area/@rel): Use new checker.
360    
361            * Makefile (_LinkTypeList.pm, RelExtensions.html): New rules.
362    
363            * _LinkTypeList.pm: New file.
364    
365            * mklinktypelist.pl: New file.
366    
367            * .cvsignore: |RelExtensions.html| added.
368    
369            * NanoDOM.pm (child_nodes): Returns an empty array
370            for non-child-containing node types.
371            (text_content): New attribute.
372    
373    2007-05-26  Wakaba  <wakaba@suika.fam.cx>
374    
375            * IMTChecker.pm: New module.
376    
377            * ContentChecker.pm ($HTMLIMTAttrChecker): Call IMTChecker
378            to test parameter value validity.
379    
380            * HTML.pm.src ($style_start_tag): Attributes were
381            discarded.
382    
383    2007-05-25  Wakaba  <wakaba@suika.fam.cx>
384    
385            * ContentChecker.pm ($HTMLURIAttrChecker): Implemented.
386    
387    2007-05-25  Wakaba  <wakaba@suika.fam.cx>
388    
389            * URIChecker.pm: All recommendations from RFC 3986
390            and RFC 3987 are listed (not all testable items are checked yet).
391    
392    2007-05-25  Wakaba  <wakaba@suika.fam.cx>
393    
394            * URIChecker.pm: New module.
395    
396    2007-05-20  Wakaba  <wakaba@suika.fam.cx>
397    
398            * ContentChecker.pm: Now most attributes are implemented
399            or associated to some placeholder.
400            ($ElementDefault): Warn unknown attributes
401            for unknown elements as "attribute not supported".
402            ($HTMLLanguageTagAttrChecker, $HTMLMQAttrChecker): New placeholders.
403            ($HTMLUsemapAttrChecker, $HTMLTargetAttrChecker): New checkers.
404            (|a| attribute checker): Reimplemented.
405    
406    2007-05-20  Wakaba  <wakaba@suika.fam.cx>
407    
408            * ContentChecker.pm ($HTMLEventHandlerAttrChecker): New placeholder.
409            ($HTMLAttrChecker): Event handler content attributes
410            are added.
411            (link, embed): Required attribute is now checked.
412            (embed): Unknown local attributes are no longer warned.
413    
414    2007-05-20  Wakaba  <wakaba@suika.fam.cx>
415    
416            * ContentChecker.pm ($HTMLSpaceURIsAttrChecker): New placeholder.
417            ($HTMLIMTAttrChecker): New checker.
418            (link@rel, link@href, link@type, style@type,
419            a@href, a@ping, a@ping, a@type, embed@src, embed@type,
420            object@data, object@type, source@src, source@type, area@alt,
421            area@shape, area@coords, area@href,
422            area@ping, area@rel, area@type, script@src,
423            script@defer, script@async, script@type): Checkers added.
424    
425    2007-05-20  Wakaba  <wakaba@suika.fam.cx>
426    
427            * ContentChecker.pm: Descendant checking was incorrect.
428    
429    2007-05-19  Wakaba  <wakaba@suika.fam.cx>
430    
431            * ContentChecker.pm: Support |xml:*| and |xmlns:*|
432            attributes.  Report an error if |Element.prefix|
433            is |xmlns|.
434    
435            * NanoDOM.pm (prefix): New attribute.
436    
437    2007-05-19  Wakaba  <wakaba@suika.fam.cx>
438    
439            * HTML.pm.src: In |main| phase, |in body| insertion
440            mode, action for |<iframe>| was missing.
441    
442    2007-05-19  Wakaba  <wakaba@suika.fam.cx>
443    
444            * ContentChecker.pm: Support for many of HTML5 elements.
445            ($GetHTMLNonNegativeIntegerAttrChecker): New.
446    
447    2007-05-19  Wakaba  <wakaba@suika.fam.cx>
448    
449            * ContentChecker.pm: Support for most elements up to |progress|.
450            ($HTMLURIAttrChecker): Placeholder.
451            ($HTMLIntegerAttrChecker, $GetHTMLFloatingPointNumberAttrChecker):
452            New.
453    
454    2007-05-19  Wakaba  <wakaba@suika.fam.cx>
455    
456            * ContentChecker.pm: Attribute checkers
457            for global attributes, |html|, |base|, |style|, and |meta|.
458    
459            * NanoDOM.pm (insert_before): Weaken reference
460            to the parent node.
461            (Attr::new): Set |owner_element| attribute.
462            (namespace_uri, manakai_local_name): New attribute implementations.
463            (owner_element): New attribute.
464    
465    2007-05-19  Wakaba  <wakaba@suika.fam.cx>
466    
467            * ContentChecker.pm ($AttrChecker, $HTMLAttrChecker,
468            $AnyChecker->{attr_checker}, $HTMLAttrsChecker,
469            $Element->{$HTML_NS}->{''}): New.
470            (check_element): Invoke attrs_checker for each element.
471    
472    2007-05-13  Wakaba  <wakaba@suika.fam.cx>
473    
474            * ContentChecker.pm: Don't use |manakai_element_type_match|.
475    
476    2007-05-13  Wakaba  <wakaba@suika.fam.cx>
477    
478            * ContentChecker.pm: Use hashs rather than lists for
479            element type testings.
480    
481    2007-05-13  Wakaba  <wakaba@suika.fam.cx>
482    
483            * ContentChecker.pm: Don't generate duplicate
484            error when an element type is put in the "minus" list
485            and the element type is not allowed explicitly in the particular
486            element content model.
487            (html:a checker): New checker.
488            (html:details, html:datagrid): New checkers.
489            (html:legend): New checker.
490    
491    2007-05-13  Wakaba  <wakaba@suika.fam.cx>
492    
493            * ContentChecker.pm (html:li checker): Implemented.
494    
495    2007-05-13  Wakaba  <wakaba@suika.fam.cx>
496    
497            * ContentChecker.pm ($HTMLInlineOrStriclyInlineChecker): New
498            checker.
499            (html:dd checker): New checker.
500            (html:q, html:em, html:strong, html:small,
501            html:m, html:dfn, html:code, html:samp, html:span): New checkers.
502    
503    2007-05-13  Wakaba  <wakaba@suika.fam.cx>
504    
505            * ContentChecker.pm ($AnyChecker): Renamed
506            from |$ElementDefault->{checker}|.
507            ($ElementDefault->{checker}): Throw an error that
508            the element type is not supported by the checker.
509            ($HTMLMetadataElement): |html:base| was missing.
510            ($HTMLEmptyChecker): Don't throw an error
511            for inter-element whitespace nodes.
512            (html:html checker): Errors were not
513            thrown even if |html:head| and/or |html:body|
514            children were missing.
515            (html:head checker): An error was not
516            thrown if <meta charset> appered after other
517            elements.
518    
519    2007-05-05  Wakaba  <wakaba@suika.fam.cx>
520    
521            * ContentChecker.pm: |footer|, |video|, |audio|, |script|,
522            and |noscript| elements are implemented.
523            (new): New method.
524    
525    2007-05-04  Wakaba  <wakaba@suika.fam.cx>
526    
527            * ContentChecker.pm: New module.
528    
529    2007-05-04  Wakaba  <wakaba@suika.fam.cx>
530    
531            * NanoDOM.pm (manakai_parent_element,
532            document_element, manakai_local_name,
533            manakai_element_type_match): New method.
534    
535    2007-05-03  Wakaba  <wakaba@suika.fam.cx>
536    
537            * HTML.pm.src: Replace decimal and hexadecimal numeric
538            entities in C1 range using Windows-1252 mapping.  Bare LF
539            did not count as new line for error reporting.
540    
541  2007-05-02  Wakaba  <wakaba@suika.fam.cx>  2007-05-02  Wakaba  <wakaba@suika.fam.cx>
542    
543          * NanoDOM.pm (DOMImplementation): New class.          * NanoDOM.pm (DOMImplementation): New class.

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.83

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24