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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24