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

Legend:
Removed from v.1.262  
changed lines
  Added in v.1.319

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24