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

Legend:
Removed from v.1.259  
changed lines
  Added in v.1.318

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24