/[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.260 by wakaba, Sat Jul 19 07:41:22 2008 UTC revision 1.339 by wakaba, Sat Oct 4 07:58:58 2008 UTC
# Line 1  Line 1 
1    2008-10-04  Wakaba  <wakaba@suika.fam.cx>
2    
3            * HTML.pm.src: <li>, <dt>, and <dd> steps reimplemented (HTML5
4            revisions 1731 and 1831).
5    
6    2008-10-04  Wakaba  <wakaba@suika.fam.cx>
7    
8            * HTML.pm.src: Support for new flow (but not phrasing) elements (HTML5
9            revisions 1731 and 1778).  Support for the </sarcasm> end tag (HTML5
10            revision 1731).
11    
12    2008-10-04  Wakaba  <wakaba@suika.fam.cx>
13    
14            * HTML.pm.src: Support for |command| and |eventsource| elements (HTML5
15            revision 1731).  End tags of |option| and |optgroup| elements are
16            now optional (HTML5 revision 1731).
17    
18    2008-10-04  Wakaba  <wakaba@suika.fam.cx>
19    
20            * HTML.pm.src: New "special" elements added to the list (HTML5
21            revision 1778).  "strile" -> "strike".
22    
23    2008-10-02  Wakaba  <wakaba@suika.fam.cx>
24    
25            * ContentType.pm (get_sniffed_type): Support for the "better"
26            content sniffing (HTML5 revision 1927).  In a case the official
27            type was not returned when the method is invoked in the list
28            context.
29    
30    2008-09-22  Wakaba  <wakaba@suika.fam.cx>
31    
32            * HTML.pm.src: Character references for non-space C0 characters,
33            including U+000B VT, DEL character, noncharacter code points, are
34            now converted to the U+FFFD character (cf. HTML5 revision 2138).
35    
36    2008-09-21  Wakaba  <wakaba@suika.fam.cx>
37    
38            * ContentChecker.pm: |form=""| check support added.
39    
40    2008-09-21  Wakaba  <wakaba@suika.fam.cx>
41    
42            * ContentChecker.pm: |contextmenu| validness is now checked using
43            |id| and |id_type| properties, and |menu| property is removed.
44    
45    2008-09-21  Wakaba  <wakaba@suika.fam.cx>
46    
47            * ContentChecker.pm: Prepare for |form| |name| attribute's
48            duplication checking.
49    
50    2008-09-21  Wakaba  <wakaba@suika.fam.cx>
51    
52            * HTML.pm.src (parse_byte_stream): Support (or non-support) for
53            unsupported charset="" parameter value (HTML5 revision 2131).
54    
55    2008-09-20  Wakaba  <wakaba@suika.fam.cx>
56    
57            * HTML.pm.src: Reminding places where U+000B is allowed as a space
58            character is fixed (cf. HTML5 revision 1738).
59    
60            * ContentChecker.pm, HTMLTable.pm: U+000B is no longer part of
61            space characters (HTML5 revision 1738).
62    
63    2008-09-20  Wakaba  <wakaba@suika.fam.cx>
64    
65            * HTML.pm.src: The "anything else" case for the "after after body"
66            insertion mode was not updated to swtich to the "in body"
67            insertion mode.  U+000B is no longer a space character for the
68            purpose of tree construction phase (HTML5 revision 1738).
69    
70    2008-09-20  Wakaba  <wakaba@suika.fam.cx>
71    
72            * HTML.pm.src: U+000B is no longer a space character (HTML5
73            revision 1738).
74    
75    2008-09-20  Wakaba  <wakaba@suika.fam.cx>
76    
77            * ContentType.pm: 0x0B is no longer a space character (HTML5
78            revision 1738).
79    
80            * HTML.pm.src: U+000B is no longer a space character for the
81            algorithm for extracting an encoding from a Content-Type (HTML5
82            revision 1738).
83    
84    2008-09-20  Wakaba  <wakaba@suika.fam.cx>
85    
86            * ContentChecker.pm ($IsInHTMLInteractiveContent): New.
87    
88    2008-09-18  Wakaba  <wakaba@suika.fam.cx>
89    
90            * LangTag.pm: Add checks for remaining requirements from RFC 4646.
91    
92            * mklangreg.pl: Sort 'Prefix' values by their length, to ease
93            matching.
94    
95    2008-09-18  Wakaba  <wakaba@suika.fam.cx>
96    
97            * LangTag.pm: Warn for private use language subtags.  Error level
98            typos fixed.  Support for Suppress-Script field.
99    
100            * mklangreg.pl: Support for dumping of nested structure.
101    
102    2008-09-18  Wakaba  <wakaba@suika.fam.cx>
103    
104            * LangTag.pm (check_rfc4646_langtag): Check if a tag is in the
105            recommended case as per RFC 4646.
106    
107    2008-09-18  Wakaba  <wakaba@suika.fam.cx>
108    
109            * LangTag.pm (check_rfc4646_langtag): New method.
110    
111    2008-09-18  Wakaba  <wakaba@suika.fam.cx>
112    
113            * mklangreg.pl: New script.
114    
115            * Makefile: Updated for creation of the module for language subtag
116            registry.
117            
118    2008-09-16  Wakaba  <wakaba@suika.fam.cx>
119    
120            * Makefile: WebIDL.html added.
121    
122            * WebIDL.pod: New documentation.
123    
124    2008-09-16  Wakaba  <wakaba@suika.fam.cx>
125    
126            * WebIDL.pm: Checker's error types are redefined.
127    
128    2008-09-16  Wakaba  <wakaba@suika.fam.cx>
129    
130            * WebIDL.pm: Parser's error types are redefined.  Some forward
131            compatible parsing bugs are fixed.  Some unreachable codes are
132            commented out.
133    
134    2008-09-16  Wakaba  <wakaba@suika.fam.cx>
135    
136            * WebIDL.pm: Support for the reminding extended attributes are
137            added.  It does not satisfy the definition that a forward
138            interface declaration has an extended attribute.  It seems that
139            unless explicitly allowed multiple extended attributes with the
140            same name is not allowed, though it is not explicitly mentioned in
141            the spec.
142    
143    2008-09-16  Wakaba  <wakaba@suika.fam.cx>
144    
145            * WebIDL.pm: Unescapes extended attribute names and extended
146            attribute identifiers.  Preserve whether an extended attribute has
147            an argument list of not.  Support for extended attributes:
148            Constructor, ExceptionConsts, IndexGetter, IndexSetter,
149            NameGetter, NameSetter, and Null.
150            (has_argument_list): New attribute.
151            (idl_text): Stringifies argument lists, if any, even if it is
152            empty.
153    
154    2008-09-15  Wakaba  <wakaba@suika.fam.cx>
155    
156            * HTML.pm.src: New state |PCDATA_STATE|.  Use an empty string for
157            |{s_kwd}| in DATA_STATE as default.
158    
159    2008-09-15  Wakaba  <wakaba@suika.fam.cx>
160    
161            * HTML.pm.src, mkhtmlparser.pl: Replace |{prev_char}|
162            by |{s_kwd}| in DATA_STATE.
163    
164    2008-09-15  Wakaba  <wakaba@suika.fam.cx>
165    
166            * HTML.pm.src: Shorten keys.
167    
168    2008-09-15  Wakaba  <wakaba@suika.fam.cx>
169    
170            * HTML.pm.src: Remove checking for control character, surrogate
171            pair, or noncharacter code points and non-Unicode code
172            points (they should be handled by Whatpm::Charset::UnicodeChecker).
173            (parse_char_stream): Support for the |$get_wrapper| argument and
174            character stream error handlers.
175    
176    2008-09-15  Wakaba  <wakaba@suika.fam.cx>
177    
178            * ContentChecker.pm: Don't call |loda_ns_module|
179            for null-namespace elements/attributes.
180    
181            * HTML.pm.src: Fact out $disallowed_control_chars
182            as a hash.
183    
184    2008-09-14  Wakaba  <wakaba@suika.fam.cx>
185    
186            * HTML.pm.src: Regexp typo fixed.  |{prev_char}|
187            and |{next_char}| initializations are moved to initialization
188            method.  |{read_until}| now supports buffering.  Sync |set_inner_html|
189            with |parse_char_stream|.
190    
191    2008-09-14  Wakaba  <wakaba@suika.fam.cx>
192    
193            * HTML.pm.src (parse_char_stream): Make |set_next_char|
194            invoke |manakai_read_until|, not only |read|, where
195            possible, to decrease the number of |read| method calls.
196    
197            * mkhtmlparser.pl: Related changes to the aforementioned
198            modification.
199    
200    2008-09-14  Wakaba  <wakaba@suika.fam.cx>
201    
202            * HTML.pm.src: Use |read| instead of |getc|.  |set_inner_html|
203            would report character error from now.
204    
205    2008-09-14  Wakaba  <wakaba@suika.fam.cx>
206    
207            * HTML.pm.src: White-space-leaded non-white-space character
208            tokens in "before head insertion mode" was not
209            correctly handled.
210            (set_inner_html): Reimplemented using CharString decodehandle
211            class.  Support for $get_wrapper argument.  Support
212            for |{read_until}| feature.
213    
214    2008-09-14  Wakaba  <wakaba@suika.fam.cx>
215    
216            * HTML.pm.src: Make a "bare ero" error for unknown
217            entities point the "&" character.
218    
219    2008-09-14  Wakaba  <wakaba@suika.fam.cx>
220    
221            * HTML.pm.src: It turns out that U+FFFD don't have to
222            be added to the list of excluded characters.
223    
224    2008-09-14  Wakaba  <wakaba@suika.fam.cx>
225    
226            * HTML.pm.src ($char_onerror): Have character decoder's |line|
227            and |column| a higher priority than the one set by the
228            tokenizer's input handler.
229            ($self->{read_until}): Exclude U+FFFD (but this might
230            not be necessary, since now we do line/column fixup in
231            the character decode handle).
232    
233    2008-09-14  Wakaba  <wakaba@suika.fam.cx>
234    
235            * HTML.pm.src: Use |{read_until}| where possible.
236    
237    2008-09-14  Wakaba  <wakaba@suika.fam.cx>
238    
239            * HTML.pm.src: Change |{getc_until}| to |{read_until}|
240            and |manakai_getc_until| to |manakai_read_until| to
241            reduce the number of string copies.
242    
243    2008-09-14  Wakaba  <wakaba@suika.fam.cx>
244    
245            * HTML.pm.src (parse_char_string): Use newly created
246            |Whatpm::Charset::DecodeHandle::CharString| instead of Perl's
247            standard feature to |open| a string as a filehandle,
248            since Perl's string filehandle seems not supporting |ungetc|
249            method correctly.
250            (parse_char_stream): Define |{getc_until}| method.
251            (DATA_STATE): Experimental support for |getc_until| feature.
252    
253    2008-09-13  Wakaba  <wakaba@suika.fam.cx>
254    
255            * HTML.pm.src: Check points added to newly added branches.
256    
257    2008-09-13  Wakaba  <wakaba@suika.fam.cx>
258    
259            * HTML.pm.src: Remove |{char}|, which is no longer used.
260            Remove |{entity_in_attr}| and |{last_attribute_value_state}|
261            and replaced by |{prev_state}|.
262    
263            * mkhtmlparser.pl: Remove |{char}| feature.
264            Remove |!!!back-next-input-character;| macro.
265    
266    2008-09-13  Wakaba  <wakaba@suika.fam.cx>
267    
268            * HTML.pm.src: Finally we get rid of all the inner loops.  Remove
269            entity related tokenizer states in favor of new states
270            implementing the consume character reference algorithm.
271    
272    2008-09-13  Wakaba  <wakaba@suika.fam.cx>
273    
274            * HTML.pm.src: "Consume a character reference" algorithm is
275            now implemented as a tokenizer's state, rather than
276            a method, with minimum changes (more changes will
277            be made, in due course).  "Bogus comment state"'s inner
278            loop gets removed.
279    
280    2008-09-13  Wakaba  <wakaba@suika.fam.cx>
281    
282            * HTML.pm.src: Make |PUBLIC| and |SYSTEM| keyword tokenizing
283            into their own tokenizer states.
284    
285    2008-09-13  Wakaba  <wakaba@suika.fam.cx>
286    
287            * HTML.pm.src: |CDATA_SECTION_STATE| (formally |CDATA_BLOCK_STATE|
288            is split into three states.
289    
290    2008-09-13  Wakaba  <wakaba@suika.fam.cx>
291    
292            * HTML.pm.src: |CLOSE_TAG_OPEN_STATE| is broken into
293            itself and new |CDATA_PCDATA_CLOSE_TAG_STATE| so that
294            no longer does the tokenizer have to push back next input
295            characters in those states.
296    
297    2008-09-13  Wakaba  <wakaba@suika.fam.cx>
298    
299            * HTML.pm.src: |MARKUP_DECLARATION_OPEN_STATE| broken
300            into four states so that no longer does the tokenizer have to push
301            back next input characters in that state.
302    
303    2008-09-11  Wakaba  <wakaba@suika.fam.cx>
304    
305            * HTML.pm.src: Methods now accept additional parameter, $get_wrapper,
306            which can be used to insert some wrapper between the character
307            stream handle and the tokenizer.  (It is currently not supported
308            for |set_inner_html| for |Element|s).
309    
310    2008-09-10  Wakaba  <wakaba@suika.fam.cx>
311    
312            * HTML.pm.src: Ignore punctuations in charset names.
313    
314    2008-09-10  Wakaba  <wakaba@suika.fam.cx>
315    
316            * ContentChecker.pm: Support for charset-layer error levels.
317    
318            * HTML.pm.src: Don't specify |text| argument for the
319            |chardecode:fallback| error, since it is not the encoding
320            being used alternatively.
321    
322    2008-09-06  Wakaba  <wakaba@suika.fam.cx>
323    
324            * HTML.pm.src: Support for |XSLT-compat| (HTML5 revision 2141).
325    
326    2008-08-31  Wakaba  <wakaba@suika.fam.cx>
327    
328            * CacheManifest.pm: Support for extensibility (HTML5 revision 2051).
329    
330    2008-08-31  Wakaba  <wakaba@suika.fam.cx>
331    
332            * HTML.pm.src: Bug fix and sync with the spec with regard
333            to after after frameset insertion mode processing (HTML5
334            revision 1909).  Note that the implementation was wrong
335            per the old spec before the r1909 changes.
336    
337    2008-08-30  Wakaba  <wakaba@suika.fam.cx>
338    
339            * HTMLTable.pm: scope=auto algorithm fix synced with the
340            spec (HTML5 revision 2093).
341            ($process_row): Algorithm step numbers synced with the
342            spec (HTML5 revision 2092).
343    
344    2008-08-30  Wakaba  <wakaba@suika.fam.cx>
345    
346            * HTMLTable.pm: Zs is not what we want; we want White_Space! (HTML5
347            revision 2094).
348    
349    2008-08-30  Wakaba  <wakaba@suika.fam.cx>
350    
351            * ContentType.pm: Support for image/svg+xml (HTML5 revision 2096).
352    
353    2008-08-30  Wakaba  <wakaba@suika.fam.cx>
354    
355            * HTML.pm.src: '"' and "'" at the end of attribute
356            name (after another attribute) now raise parse error (HTML5
357            revision 2123).  Empty unquoted attribute values are no
358            longer allowed (HTML5 revision 2122).
359    
360    2008-08-30  Wakaba  <wakaba@suika.fam.cx>
361    
362            * mkhtmlparser.pl: Support for MathML |definitionURL| attribute (HTML5
363            revision 2130).
364    
365    2008-08-30  Wakaba  <wakaba@suika.fam.cx>
366    
367            * ContentChecker.pm: |xml:lang| attribute value must be same
368            as |lang| attribute value for HTML elements (HTML5 revision 2062
369            and so on).
370    
371    2008-08-30  Wakaba  <wakaba@suika.fam.cx>
372    
373            * ContentChecker.pm: Error level definition for |xml_id_error|
374            was missing.
375    
376            * URIChecker.pm: The end of the URL should be marked as the
377            error location for an empty path error.  The position
378            between the userinfo and the port components should be
379            marked as the error location for an empty host error.
380    
381    2008-08-30  Wakaba  <wakaba@suika.fam.cx>
382    
383            * URIChecker.pm: Set parameters representing where in the
384            value the error occurs for errors.  Report unknown
385            address format error in warning level, since address
386            formats are rarely added.  Path segments starting with "/.."
387            were misinterpreted as a dot-segment.
388    
389    2008-08-30  Wakaba  <wakaba@suika.fam.cx>
390    
391            * URIChecker.pm (check_iri_reference): Requires
392            |Message::DOM::DOMImplementation|.
393    
394    2008-08-29  Wakaba  <wakaba@suika.fam.cx>
395    
396            * IMTChecker.pm: Updated for the new error reporting architecture.
397    
398            * ContentChecker.pm: Error levels for IMTs are added.
399    
400    2008-08-17  Wakaba  <wakaba@suika.fam.cx>
401    
402            * H2H.pm (_shift_token): Support for unquoted HTML attribute
403            values.
404    
405    2008-08-16  Wakaba  <wakaba@suika.fam.cx>
406    
407            * CacheManifest.pm: Support for new style of error
408            reports.
409    
410            * HTML.pm.src: Set line=1, column=1 to the document node.
411    
412    2008-08-16  Wakaba  <wakaba@suika.fam.cx>
413    
414            * ContentChecker.pm, RDFXML.pm: Pass {level} object to language tag
415            and URL checkers.  Support for more error levels for bogus
416            langauge tag and URL "standards".
417    
418            * LangTag.pm, URIChecker.pm: Support for new style error
419            level reporting.
420    
421    2008-08-15  Wakaba  <wakaba@suika.fam.cx>
422    
423            * ContentChecker.pm: Support for RDF/XML error levels.
424    
425            * HTMLTable.pm, RDFXML.pm: Support for new style of error level
426            specifying.  Error types are revised.
427    
428    2008-08-15  Wakaba  <wakaba@suika.fam.cx>
429    
430            * ContentChecker.pm: All error reporting method calls are
431            renewed.
432    
433    2008-08-15  Wakaba  <wakaba@suika.fam.cx>
434    
435            * HTML.pm.src: All error type names and "text" parameters
436            are revised.  Use new style for "level" specification.
437    
438            * mkhtmlparser.pl: Use new style for "level" specification.
439    
440    2008-08-03  Wakaba  <wakaba@suika.fam.cx>
441    
442            * WebIDL.pm (parse_char_string): Simplified error
443            reporting process for broken ignored valuetype definition.
444            (Valuetype idl_text): Support for special "DOMString" name.
445    
446    2008-08-03  Wakaba  <wakaba@suika.fam.cx>
447    
448            * WebIDL.pm ($get_scoped_name): Append "::::" if the last
449            terminal of the ScopedName is "DOMString", such that whether
450            the last part of the scoped name is "DOMString" or "_DOMString"
451            later.  It is necessary to determine whether a |typedef|
452            definition should be ignored or not.
453            (parse_char_string): Unescape the identifier of
454            exception members.
455            ($resolve): Return undef for builtin types and sequence<T>
456            types (we might not have to do this, however...).
457            (check): Support checking for Exceptions, Valuetypes,
458            and Typedefs.
459            ($serialize_type): Support for "DOMString::::" syntax.
460            (Typedef idl_text): Output Type as "DOMString" if it
461            is really "DOMString" (i.e. its internal representation
462            is "::DOMString::").
463    
464    2008-08-03  Wakaba  <wakaba@suika.fam.cx>
465    
466            * WebIDL.pm ($resolve): New code, based on resolve code
467            for constant types in the |check| method.
468            (check): Support for checking of attributes, operations, and
469            arguments.
470            (Attribute/Operation idl_text): Exception names in getraises,
471            setraises, and raises clauses is serizlied by |$serialize_type|
472            code.
473    
474    2008-08-02  Wakaba  <wakaba@suika.fam.cx>
475    
476            * WebIDL.pm ($integer): Order of selections are changed to match
477            hexadecimal numbers (the original pattern, taken from the spec,
478            was not work for hexadecimal numbers, because the "0" prefix
479            matches to the [0-7]* part (as an empty string) and therefore
480            it does not match with remaining "x..." part of a "0x..." integer
481            literal.
482            ($get_type): It now returns a string, not an array reference,
483            for regular types and |sequence| types (i.e. it in any case
484            returns a string).
485            ($get_next_token): The second item in the array that represents
486            a integer or float token is now a Perl number value, not the
487            original string representation of the number.
488            (check): Support for const value consistency checking.
489            No extended attribute is defined for constants.
490            (Node subclasses): Use simple strings rather than array references
491            for default data type values.
492            ($serialize_type): Type values are now simple strings.
493            (value): If the new attribute value is a false value, then
494            a FALSE value is set to the attribute.
495    
496    2008-08-02  Wakaba  <wakaba@suika.fam.cx>
497    
498            * WebIDL.pm ($get_scoped_name): Now scoped names are stored
499            in its stringified format ("scoped name" as defined in the
500            spec).  Note that future version of this module should not use
501            array references for type values and the |type_text| attribute
502            should be made obsolete.
503            (parse_char_string): Unescape attribute names.
504            (check): Support for checking of whether inherited interfaces
505            are actually defined or not.  Support for checking of whether
506            interface member identifiers are duplicated or not.
507            ($serialize_type): Scoped names are returned as is.  A future
508            version of this code should escape identifiers other than "DOMString",
509            otherwise the idl_text would be non-conforming.
510    
511    2008-08-02  Wakaba  <wakaba@suika.fam.cx>
512    
513            * WebIDL.pm (parse_char_string): Set line/column numbers
514            to generated nodes.  Unescape identifiers.  Extended attributes
515            for Definition's were ignored.
516            (append_child): Set |parent_node| attribute.
517            (parent_node): New attribute.
518            (check): Support interface/exception members.  Support
519            extended attributes.  Support definition identifier uniqueness
520            constraint.
521            (qualified_name): New attribute.
522            (Interface/Exception idl_text): Extended attributes were
523            not prepended to the returned text.
524    
525    2008-08-02  Wakaba  <wakaba@suika.fam.cx>
526    
527            * WebIDL.pm (parse_char_string): Set line/column numbers
528            to interface object experimentally.  s/shift/pop/g, shift
529            would make things wrong.  Support for interface forward
530            declarations was missing.  Broken interface declarations
531            with no block were not ignored entirely.
532            (Whatpm::WebIDL::Node): New abstract class.  This class
533            makes things easier.
534            (child_nodes): New attribute.  Unlike DOM's attribute with
535            same name, this attribute returns a dead list of nodes for
536            simplicity.
537            (get_user_data, set_user_data): New methods.
538            (Module idl_text): A SPACE character should be inserted
539            before the |{| character.
540            (Interface idl_text): Support for interface forward declarations.
541            (is_forward_declaration): New attribute.
542    
543    2008-07-19  Wakaba  <wakaba@suika.fam.cx>
544    
545            * WebIDL.pm (type_text): Better serializer.
546    
547    2008-07-19  Wakaba  <wakaba@suika.fam.cx>
548    
549            * WebIDL.pm: Revise forward-compatible parsing so that
550            it now can handle broken extended attributes and as such.
551    
552    2008-07-19  Wakaba  <wakaba@suika.fam.cx>
553    
554            * WebIDL.pm: Real support for extended attributes.
555            Support for extended attributes with arguments.
556    
557  2008-07-19  Wakaba  <wakaba@suika.fam.cx>  2008-07-19  Wakaba  <wakaba@suika.fam.cx>
558    
559          * WebIDL.pm: Support for |exception| syntax.          * WebIDL.pm: Support for |exception| syntax.

Legend:
Removed from v.1.260  
changed lines
  Added in v.1.339

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24