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

Legend:
Removed from v.1.237  
changed lines
  Added in v.1.315

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24