/[suikacvs]/markup/html/whatpm/Whatpm/ChangeLog
Suika

Contents of /markup/html/whatpm/Whatpm/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.343 - (hide annotations) (download)
Sat Oct 4 11:32:15 2008 UTC (16 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.342: +6 -0 lines
++ whatpm/t/ChangeLog	4 Oct 2008 10:23:01 -0000
	* tree-test-foreign.dat: New test data file.

2008-10-04  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/ChangeLog	4 Oct 2008 11:32:06 -0000
	* HTML.pm.src: Make <foreignObject> scoping (HTML5 revision 1837).
	Support for end tags of camelCase SVG elements were broken.  A
	wrong error type text fixed.

2008-10-04  Wakaba  <wakaba@suika.fam.cx>

1 wakaba 1.336 2008-10-04 Wakaba <wakaba@suika.fam.cx>
2    
3 wakaba 1.343 * HTML.pm.src: Make <foreignObject> scoping (HTML5 revision 1837).
4     Support for end tags of camelCase SVG elements were broken. A
5     wrong error type text fixed.
6    
7     2008-10-04 Wakaba <wakaba@suika.fam.cx>
8    
9 wakaba 1.342 * HTML.pm.src: Drop redundant code (HTML5 revision 1731).
10    
11     2008-10-04 Wakaba <wakaba@suika.fam.cx>
12    
13 wakaba 1.341 * HTML.pm.src: Support for new definition of |param| and |source|
14     start tag parsing (HTML5 revision 1731).
15    
16     2008-10-04 Wakaba <wakaba@suika.fam.cx>
17    
18 wakaba 1.340 * HTML.pm.src: <p> steps reimplemented (HTML5 revision 1731).
19    
20     2008-10-04 Wakaba <wakaba@suika.fam.cx>
21    
22 wakaba 1.339 * HTML.pm.src: <li>, <dt>, and <dd> steps reimplemented (HTML5
23     revisions 1731 and 1831).
24    
25     2008-10-04 Wakaba <wakaba@suika.fam.cx>
26    
27 wakaba 1.338 * HTML.pm.src: Support for new flow (but not phrasing) elements (HTML5
28     revisions 1731 and 1778). Support for the </sarcasm> end tag (HTML5
29     revision 1731).
30    
31     2008-10-04 Wakaba <wakaba@suika.fam.cx>
32    
33 wakaba 1.337 * HTML.pm.src: Support for |command| and |eventsource| elements (HTML5
34     revision 1731). End tags of |option| and |optgroup| elements are
35     now optional (HTML5 revision 1731).
36    
37     2008-10-04 Wakaba <wakaba@suika.fam.cx>
38    
39 wakaba 1.336 * HTML.pm.src: New "special" elements added to the list (HTML5
40     revision 1778). "strile" -> "strike".
41    
42 wakaba 1.335 2008-10-02 Wakaba <wakaba@suika.fam.cx>
43    
44     * ContentType.pm (get_sniffed_type): Support for the "better"
45     content sniffing (HTML5 revision 1927). In a case the official
46     type was not returned when the method is invoked in the list
47     context.
48    
49 wakaba 1.334 2008-09-22 Wakaba <wakaba@suika.fam.cx>
50    
51     * HTML.pm.src: Character references for non-space C0 characters,
52     including U+000B VT, DEL character, noncharacter code points, are
53     now converted to the U+FFFD character (cf. HTML5 revision 2138).
54    
55 wakaba 1.330 2008-09-21 Wakaba <wakaba@suika.fam.cx>
56    
57 wakaba 1.333 * ContentChecker.pm: |form=""| check support added.
58    
59     2008-09-21 Wakaba <wakaba@suika.fam.cx>
60    
61 wakaba 1.332 * ContentChecker.pm: |contextmenu| validness is now checked using
62     |id| and |id_type| properties, and |menu| property is removed.
63    
64     2008-09-21 Wakaba <wakaba@suika.fam.cx>
65    
66 wakaba 1.331 * ContentChecker.pm: Prepare for |form| |name| attribute's
67     duplication checking.
68    
69     2008-09-21 Wakaba <wakaba@suika.fam.cx>
70    
71 wakaba 1.330 * HTML.pm.src (parse_byte_stream): Support (or non-support) for
72     unsupported charset="" parameter value (HTML5 revision 2131).
73    
74 wakaba 1.325 2008-09-20 Wakaba <wakaba@suika.fam.cx>
75    
76 wakaba 1.329 * HTML.pm.src: Reminding places where U+000B is allowed as a space
77     character is fixed (cf. HTML5 revision 1738).
78    
79     * ContentChecker.pm, HTMLTable.pm: U+000B is no longer part of
80     space characters (HTML5 revision 1738).
81    
82     2008-09-20 Wakaba <wakaba@suika.fam.cx>
83    
84 wakaba 1.328 * HTML.pm.src: The "anything else" case for the "after after body"
85     insertion mode was not updated to swtich to the "in body"
86     insertion mode. U+000B is no longer a space character for the
87     purpose of tree construction phase (HTML5 revision 1738).
88    
89     2008-09-20 Wakaba <wakaba@suika.fam.cx>
90    
91 wakaba 1.327 * HTML.pm.src: U+000B is no longer a space character (HTML5
92     revision 1738).
93    
94     2008-09-20 Wakaba <wakaba@suika.fam.cx>
95    
96 wakaba 1.326 * ContentType.pm: 0x0B is no longer a space character (HTML5
97     revision 1738).
98    
99     * HTML.pm.src: U+000B is no longer a space character for the
100     algorithm for extracting an encoding from a Content-Type (HTML5
101     revision 1738).
102    
103     2008-09-20 Wakaba <wakaba@suika.fam.cx>
104    
105 wakaba 1.325 * ContentChecker.pm ($IsInHTMLInteractiveContent): New.
106    
107 wakaba 1.320 2008-09-18 Wakaba <wakaba@suika.fam.cx>
108    
109 wakaba 1.324 * LangTag.pm: Add checks for remaining requirements from RFC 4646.
110    
111     * mklangreg.pl: Sort 'Prefix' values by their length, to ease
112     matching.
113    
114     2008-09-18 Wakaba <wakaba@suika.fam.cx>
115    
116 wakaba 1.323 * LangTag.pm: Warn for private use language subtags. Error level
117     typos fixed. Support for Suppress-Script field.
118    
119     * mklangreg.pl: Support for dumping of nested structure.
120    
121     2008-09-18 Wakaba <wakaba@suika.fam.cx>
122    
123 wakaba 1.322 * LangTag.pm (check_rfc4646_langtag): Check if a tag is in the
124     recommended case as per RFC 4646.
125    
126     2008-09-18 Wakaba <wakaba@suika.fam.cx>
127    
128 wakaba 1.321 * LangTag.pm (check_rfc4646_langtag): New method.
129    
130     2008-09-18 Wakaba <wakaba@suika.fam.cx>
131    
132 wakaba 1.320 * mklangreg.pl: New script.
133    
134     * Makefile: Updated for creation of the module for language subtag
135     registry.
136    
137 wakaba 1.315 2008-09-16 Wakaba <wakaba@suika.fam.cx>
138    
139 wakaba 1.319 * Makefile: WebIDL.html added.
140    
141     * WebIDL.pod: New documentation.
142    
143     2008-09-16 Wakaba <wakaba@suika.fam.cx>
144    
145 wakaba 1.318 * WebIDL.pm: Checker's error types are redefined.
146    
147     2008-09-16 Wakaba <wakaba@suika.fam.cx>
148    
149 wakaba 1.317 * WebIDL.pm: Parser's error types are redefined. Some forward
150     compatible parsing bugs are fixed. Some unreachable codes are
151     commented out.
152    
153     2008-09-16 Wakaba <wakaba@suika.fam.cx>
154    
155 wakaba 1.316 * WebIDL.pm: Support for the reminding extended attributes are
156     added. It does not satisfy the definition that a forward
157     interface declaration has an extended attribute. It seems that
158     unless explicitly allowed multiple extended attributes with the
159     same name is not allowed, though it is not explicitly mentioned in
160     the spec.
161    
162     2008-09-16 Wakaba <wakaba@suika.fam.cx>
163    
164 wakaba 1.315 * WebIDL.pm: Unescapes extended attribute names and extended
165     attribute identifiers. Preserve whether an extended attribute has
166     an argument list of not. Support for extended attributes:
167     Constructor, ExceptionConsts, IndexGetter, IndexSetter,
168     NameGetter, NameSetter, and Null.
169     (has_argument_list): New attribute.
170     (idl_text): Stringifies argument lists, if any, even if it is
171     empty.
172    
173 wakaba 1.310 2008-09-15 Wakaba <wakaba@suika.fam.cx>
174    
175 wakaba 1.314 * HTML.pm.src: New state |PCDATA_STATE|. Use an empty string for
176     |{s_kwd}| in DATA_STATE as default.
177    
178     2008-09-15 Wakaba <wakaba@suika.fam.cx>
179    
180 wakaba 1.313 * HTML.pm.src, mkhtmlparser.pl: Replace |{prev_char}|
181     by |{s_kwd}| in DATA_STATE.
182    
183     2008-09-15 Wakaba <wakaba@suika.fam.cx>
184    
185 wakaba 1.312 * HTML.pm.src: Shorten keys.
186    
187     2008-09-15 Wakaba <wakaba@suika.fam.cx>
188    
189 wakaba 1.311 * HTML.pm.src: Remove checking for control character, surrogate
190     pair, or noncharacter code points and non-Unicode code
191     points (they should be handled by Whatpm::Charset::UnicodeChecker).
192     (parse_char_stream): Support for the |$get_wrapper| argument and
193     character stream error handlers.
194    
195     2008-09-15 Wakaba <wakaba@suika.fam.cx>
196    
197 wakaba 1.310 * ContentChecker.pm: Don't call |loda_ns_module|
198     for null-namespace elements/attributes.
199    
200     * HTML.pm.src: Fact out $disallowed_control_chars
201     as a hash.
202    
203 wakaba 1.300 2008-09-14 Wakaba <wakaba@suika.fam.cx>
204    
205 wakaba 1.309 * HTML.pm.src: Regexp typo fixed. |{prev_char}|
206     and |{next_char}| initializations are moved to initialization
207     method. |{read_until}| now supports buffering. Sync |set_inner_html|
208     with |parse_char_stream|.
209    
210     2008-09-14 Wakaba <wakaba@suika.fam.cx>
211    
212 wakaba 1.308 * HTML.pm.src (parse_char_stream): Make |set_next_char|
213     invoke |manakai_read_until|, not only |read|, where
214     possible, to decrease the number of |read| method calls.
215    
216     * mkhtmlparser.pl: Related changes to the aforementioned
217     modification.
218    
219     2008-09-14 Wakaba <wakaba@suika.fam.cx>
220    
221 wakaba 1.307 * HTML.pm.src: Use |read| instead of |getc|. |set_inner_html|
222     would report character error from now.
223    
224     2008-09-14 Wakaba <wakaba@suika.fam.cx>
225    
226 wakaba 1.306 * HTML.pm.src: White-space-leaded non-white-space character
227     tokens in "before head insertion mode" was not
228     correctly handled.
229     (set_inner_html): Reimplemented using CharString decodehandle
230     class. Support for $get_wrapper argument. Support
231     for |{read_until}| feature.
232    
233     2008-09-14 Wakaba <wakaba@suika.fam.cx>
234    
235 wakaba 1.305 * HTML.pm.src: Make a "bare ero" error for unknown
236     entities point the "&" character.
237    
238     2008-09-14 Wakaba <wakaba@suika.fam.cx>
239    
240 wakaba 1.304 * HTML.pm.src: It turns out that U+FFFD don't have to
241     be added to the list of excluded characters.
242    
243     2008-09-14 Wakaba <wakaba@suika.fam.cx>
244    
245 wakaba 1.303 * HTML.pm.src ($char_onerror): Have character decoder's |line|
246     and |column| a higher priority than the one set by the
247     tokenizer's input handler.
248     ($self->{read_until}): Exclude U+FFFD (but this might
249     not be necessary, since now we do line/column fixup in
250     the character decode handle).
251    
252     2008-09-14 Wakaba <wakaba@suika.fam.cx>
253    
254 wakaba 1.302 * HTML.pm.src: Use |{read_until}| where possible.
255    
256     2008-09-14 Wakaba <wakaba@suika.fam.cx>
257    
258 wakaba 1.301 * HTML.pm.src: Change |{getc_until}| to |{read_until}|
259     and |manakai_getc_until| to |manakai_read_until| to
260     reduce the number of string copies.
261    
262     2008-09-14 Wakaba <wakaba@suika.fam.cx>
263    
264 wakaba 1.300 * HTML.pm.src (parse_char_string): Use newly created
265     |Whatpm::Charset::DecodeHandle::CharString| instead of Perl's
266     standard feature to |open| a string as a filehandle,
267     since Perl's string filehandle seems not supporting |ungetc|
268     method correctly.
269     (parse_char_stream): Define |{getc_until}| method.
270     (DATA_STATE): Experimental support for |getc_until| feature.
271    
272 wakaba 1.292 2008-09-13 Wakaba <wakaba@suika.fam.cx>
273    
274 wakaba 1.299 * HTML.pm.src: Check points added to newly added branches.
275    
276     2008-09-13 Wakaba <wakaba@suika.fam.cx>
277    
278 wakaba 1.298 * HTML.pm.src: Remove |{char}|, which is no longer used.
279     Remove |{entity_in_attr}| and |{last_attribute_value_state}|
280     and replaced by |{prev_state}|.
281    
282     * mkhtmlparser.pl: Remove |{char}| feature.
283     Remove |!!!back-next-input-character;| macro.
284    
285     2008-09-13 Wakaba <wakaba@suika.fam.cx>
286    
287 wakaba 1.297 * HTML.pm.src: Finally we get rid of all the inner loops. Remove
288     entity related tokenizer states in favor of new states
289     implementing the consume character reference algorithm.
290    
291     2008-09-13 Wakaba <wakaba@suika.fam.cx>
292    
293     * HTML.pm.src: "Consume a character reference" algorithm is
294 wakaba 1.296 now implemented as a tokenizer's state, rather than
295     a method, with minimum changes (more changes will
296     be made, in due course). "Bogus comment state"'s inner
297     loop gets removed.
298    
299     2008-09-13 Wakaba <wakaba@suika.fam.cx>
300    
301 wakaba 1.297 * HTML.pm.src: Make |PUBLIC| and |SYSTEM| keyword tokenizing
302 wakaba 1.295 into their own tokenizer states.
303    
304     2008-09-13 Wakaba <wakaba@suika.fam.cx>
305    
306 wakaba 1.294 * HTML.pm.src: |CDATA_SECTION_STATE| (formally |CDATA_BLOCK_STATE|
307     is split into three states.
308    
309     2008-09-13 Wakaba <wakaba@suika.fam.cx>
310    
311 wakaba 1.293 * HTML.pm.src: |CLOSE_TAG_OPEN_STATE| is broken into
312     itself and new |CDATA_PCDATA_CLOSE_TAG_STATE| so that
313     no longer does the tokenizer have to push back next input
314     characters in those states.
315    
316     2008-09-13 Wakaba <wakaba@suika.fam.cx>
317    
318 wakaba 1.292 * HTML.pm.src: |MARKUP_DECLARATION_OPEN_STATE| broken
319     into four states so that no longer does the tokenizer have to push
320     back next input characters in that state.
321    
322 wakaba 1.291 2008-09-11 Wakaba <wakaba@suika.fam.cx>
323    
324     * HTML.pm.src: Methods now accept additional parameter, $get_wrapper,
325     which can be used to insert some wrapper between the character
326     stream handle and the tokenizer. (It is currently not supported
327     for |set_inner_html| for |Element|s).
328    
329 wakaba 1.289 2008-09-10 Wakaba <wakaba@suika.fam.cx>
330    
331 wakaba 1.290 * HTML.pm.src: Ignore punctuations in charset names.
332    
333     2008-09-10 Wakaba <wakaba@suika.fam.cx>
334    
335 wakaba 1.289 * ContentChecker.pm: Support for charset-layer error levels.
336    
337     * HTML.pm.src: Don't specify |text| argument for the
338     |chardecode:fallback| error, since it is not the encoding
339     being used alternatively.
340    
341 wakaba 1.288 2008-09-06 Wakaba <wakaba@suika.fam.cx>
342    
343     * HTML.pm.src: Support for |XSLT-compat| (HTML5 revision 2141).
344    
345 wakaba 1.286 2008-08-31 Wakaba <wakaba@suika.fam.cx>
346    
347 wakaba 1.287 * CacheManifest.pm: Support for extensibility (HTML5 revision 2051).
348    
349     2008-08-31 Wakaba <wakaba@suika.fam.cx>
350    
351 wakaba 1.286 * HTML.pm.src: Bug fix and sync with the spec with regard
352     to after after frameset insertion mode processing (HTML5
353     revision 1909). Note that the implementation was wrong
354     per the old spec before the r1909 changes.
355    
356 wakaba 1.278 2008-08-30 Wakaba <wakaba@suika.fam.cx>
357    
358 wakaba 1.285 * HTMLTable.pm: scope=auto algorithm fix synced with the
359     spec (HTML5 revision 2093).
360     ($process_row): Algorithm step numbers synced with the
361     spec (HTML5 revision 2092).
362    
363     2008-08-30 Wakaba <wakaba@suika.fam.cx>
364    
365 wakaba 1.284 * HTMLTable.pm: Zs is not what we want; we want White_Space! (HTML5
366     revision 2094).
367    
368     2008-08-30 Wakaba <wakaba@suika.fam.cx>
369    
370     * ContentType.pm: Support for image/svg+xml (HTML5 revision 2096).
371    
372     2008-08-30 Wakaba <wakaba@suika.fam.cx>
373    
374 wakaba 1.283 * HTML.pm.src: '"' and "'" at the end of attribute
375     name (after another attribute) now raise parse error (HTML5
376     revision 2123). Empty unquoted attribute values are no
377     longer allowed (HTML5 revision 2122).
378    
379     2008-08-30 Wakaba <wakaba@suika.fam.cx>
380    
381 wakaba 1.282 * mkhtmlparser.pl: Support for MathML |definitionURL| attribute (HTML5
382     revision 2130).
383    
384     2008-08-30 Wakaba <wakaba@suika.fam.cx>
385    
386 wakaba 1.281 * ContentChecker.pm: |xml:lang| attribute value must be same
387     as |lang| attribute value for HTML elements (HTML5 revision 2062
388     and so on).
389    
390     2008-08-30 Wakaba <wakaba@suika.fam.cx>
391    
392 wakaba 1.280 * ContentChecker.pm: Error level definition for |xml_id_error|
393     was missing.
394    
395     * URIChecker.pm: The end of the URL should be marked as the
396     error location for an empty path error. The position
397     between the userinfo and the port components should be
398     marked as the error location for an empty host error.
399    
400     2008-08-30 Wakaba <wakaba@suika.fam.cx>
401    
402 wakaba 1.279 * URIChecker.pm: Set parameters representing where in the
403     value the error occurs for errors. Report unknown
404     address format error in warning level, since address
405     formats are rarely added. Path segments starting with "/.."
406     were misinterpreted as a dot-segment.
407    
408     2008-08-30 Wakaba <wakaba@suika.fam.cx>
409    
410 wakaba 1.278 * URIChecker.pm (check_iri_reference): Requires
411     |Message::DOM::DOMImplementation|.
412    
413 wakaba 1.277 2008-08-29 Wakaba <wakaba@suika.fam.cx>
414    
415     * IMTChecker.pm: Updated for the new error reporting architecture.
416    
417     * ContentChecker.pm: Error levels for IMTs are added.
418    
419 wakaba 1.276 2008-08-17 Wakaba <wakaba@suika.fam.cx>
420    
421     * H2H.pm (_shift_token): Support for unquoted HTML attribute
422     values.
423    
424 wakaba 1.274 2008-08-16 Wakaba <wakaba@suika.fam.cx>
425    
426 wakaba 1.275 * CacheManifest.pm: Support for new style of error
427     reports.
428    
429     * HTML.pm.src: Set line=1, column=1 to the document node.
430    
431     2008-08-16 Wakaba <wakaba@suika.fam.cx>
432    
433 wakaba 1.274 * ContentChecker.pm, RDFXML.pm: Pass {level} object to language tag
434     and URL checkers. Support for more error levels for bogus
435     langauge tag and URL "standards".
436    
437     * LangTag.pm, URIChecker.pm: Support for new style error
438     level reporting.
439    
440 wakaba 1.271 2008-08-15 Wakaba <wakaba@suika.fam.cx>
441    
442 wakaba 1.273 * ContentChecker.pm: Support for RDF/XML error levels.
443    
444     * HTMLTable.pm, RDFXML.pm: Support for new style of error level
445     specifying. Error types are revised.
446    
447     2008-08-15 Wakaba <wakaba@suika.fam.cx>
448    
449 wakaba 1.272 * ContentChecker.pm: All error reporting method calls are
450     renewed.
451    
452     2008-08-15 Wakaba <wakaba@suika.fam.cx>
453    
454 wakaba 1.271 * HTML.pm.src: All error type names and "text" parameters
455     are revised. Use new style for "level" specification.
456    
457     * mkhtmlparser.pl: Use new style for "level" specification.
458    
459 wakaba 1.268 2008-08-03 Wakaba <wakaba@suika.fam.cx>
460    
461 wakaba 1.270 * WebIDL.pm (parse_char_string): Simplified error
462     reporting process for broken ignored valuetype definition.
463     (Valuetype idl_text): Support for special "DOMString" name.
464    
465     2008-08-03 Wakaba <wakaba@suika.fam.cx>
466    
467 wakaba 1.269 * WebIDL.pm ($get_scoped_name): Append "::::" if the last
468     terminal of the ScopedName is "DOMString", such that whether
469     the last part of the scoped name is "DOMString" or "_DOMString"
470     later. It is necessary to determine whether a |typedef|
471     definition should be ignored or not.
472     (parse_char_string): Unescape the identifier of
473     exception members.
474     ($resolve): Return undef for builtin types and sequence<T>
475     types (we might not have to do this, however...).
476     (check): Support checking for Exceptions, Valuetypes,
477     and Typedefs.
478     ($serialize_type): Support for "DOMString::::" syntax.
479     (Typedef idl_text): Output Type as "DOMString" if it
480     is really "DOMString" (i.e. its internal representation
481     is "::DOMString::").
482    
483     2008-08-03 Wakaba <wakaba@suika.fam.cx>
484    
485 wakaba 1.268 * WebIDL.pm ($resolve): New code, based on resolve code
486     for constant types in the |check| method.
487     (check): Support for checking of attributes, operations, and
488     arguments.
489     (Attribute/Operation idl_text): Exception names in getraises,
490     setraises, and raises clauses is serizlied by |$serialize_type|
491     code.
492    
493 wakaba 1.264 2008-08-02 Wakaba <wakaba@suika.fam.cx>
494    
495 wakaba 1.267 * WebIDL.pm ($integer): Order of selections are changed to match
496     hexadecimal numbers (the original pattern, taken from the spec,
497     was not work for hexadecimal numbers, because the "0" prefix
498     matches to the [0-7]* part (as an empty string) and therefore
499     it does not match with remaining "x..." part of a "0x..." integer
500     literal.
501     ($get_type): It now returns a string, not an array reference,
502     for regular types and |sequence| types (i.e. it in any case
503     returns a string).
504     ($get_next_token): The second item in the array that represents
505     a integer or float token is now a Perl number value, not the
506     original string representation of the number.
507     (check): Support for const value consistency checking.
508     No extended attribute is defined for constants.
509     (Node subclasses): Use simple strings rather than array references
510     for default data type values.
511     ($serialize_type): Type values are now simple strings.
512     (value): If the new attribute value is a false value, then
513     a FALSE value is set to the attribute.
514    
515     2008-08-02 Wakaba <wakaba@suika.fam.cx>
516    
517 wakaba 1.266 * WebIDL.pm ($get_scoped_name): Now scoped names are stored
518     in its stringified format ("scoped name" as defined in the
519     spec). Note that future version of this module should not use
520     array references for type values and the |type_text| attribute
521     should be made obsolete.
522     (parse_char_string): Unescape attribute names.
523     (check): Support for checking of whether inherited interfaces
524     are actually defined or not. Support for checking of whether
525     interface member identifiers are duplicated or not.
526     ($serialize_type): Scoped names are returned as is. A future
527     version of this code should escape identifiers other than "DOMString",
528     otherwise the idl_text would be non-conforming.
529    
530     2008-08-02 Wakaba <wakaba@suika.fam.cx>
531    
532 wakaba 1.264 * WebIDL.pm (parse_char_string): Set line/column numbers
533 wakaba 1.265 to generated nodes. Unescape identifiers. Extended attributes
534     for Definition's were ignored.
535     (append_child): Set |parent_node| attribute.
536     (parent_node): New attribute.
537     (check): Support interface/exception members. Support
538     extended attributes. Support definition identifier uniqueness
539     constraint.
540     (qualified_name): New attribute.
541     (Interface/Exception idl_text): Extended attributes were
542     not prepended to the returned text.
543    
544     2008-08-02 Wakaba <wakaba@suika.fam.cx>
545    
546     * WebIDL.pm (parse_char_string): Set line/column numbers
547 wakaba 1.264 to interface object experimentally. s/shift/pop/g, shift
548     would make things wrong. Support for interface forward
549     declarations was missing. Broken interface declarations
550     with no block were not ignored entirely.
551     (Whatpm::WebIDL::Node): New abstract class. This class
552     makes things easier.
553     (child_nodes): New attribute. Unlike DOM's attribute with
554     same name, this attribute returns a dead list of nodes for
555     simplicity.
556     (get_user_data, set_user_data): New methods.
557     (Module idl_text): A SPACE character should be inserted
558     before the |{| character.
559     (Interface idl_text): Support for interface forward declarations.
560     (is_forward_declaration): New attribute.
561    
562 wakaba 1.259 2008-07-19 Wakaba <wakaba@suika.fam.cx>
563    
564 wakaba 1.263 * WebIDL.pm (type_text): Better serializer.
565    
566     2008-07-19 Wakaba <wakaba@suika.fam.cx>
567    
568 wakaba 1.262 * WebIDL.pm: Revise forward-compatible parsing so that
569     it now can handle broken extended attributes and as such.
570    
571     2008-07-19 Wakaba <wakaba@suika.fam.cx>
572    
573 wakaba 1.261 * WebIDL.pm: Real support for extended attributes.
574     Support for extended attributes with arguments.
575    
576     2008-07-19 Wakaba <wakaba@suika.fam.cx>
577    
578 wakaba 1.260 * WebIDL.pm: Support for |exception| syntax.
579     (Interface->idl_text): Tentative support for inheritances.
580    
581     2008-07-19 Wakaba <wakaba@suika.fam.cx>
582    
583 wakaba 1.259 * WebIDL.pm: Hierarchical scoped name support was broken.
584     Support for raises, setraises, and getraises syntaxes.
585    
586 wakaba 1.258 2008-07-18 Wakaba <wakaba@suika.fam.cx>
587    
588     * WebIDL.pm: Support for |idl_text| attribute, version 1 (no
589     proper support for types, extended attributes, and exceptions yet).
590     WebIDL parser, version 1 (no support for exceptions yet,
591     no proper support for extended attributes yet).
592    
593 wakaba 1.257 2008-07-09 Wakaba <wakaba@suika.fam.cx>
594    
595     * WebIDL.pm (parse_char_string): Support for basic attribute syntax.
596    
597 wakaba 1.255 2008-06-29 Wakaba <wakaba@suika.fam.cx>
598    
599 wakaba 1.256 * WebIDL.pm: Support for valuetype and const.
600    
601     2008-06-29 Wakaba <wakaba@suika.fam.cx>
602    
603 wakaba 1.255 * WebIDL.pm: New module.
604    
605 wakaba 1.254 2008-06-15 Wakaba <wakaba@suika.fam.cx>
606    
607     * Makefile (Entities.html): URI changed.
608    
609 wakaba 1.253 2008-06-08 Wakaba <wakaba@suika.fam.cx>
610    
611     * HTML.pm.src: Support for ruby parsing (HTML5 revision 1704).
612    
613 wakaba 1.251 2008-06-01 Wakaba <wakaba@suika.fam.cx>
614    
615 wakaba 1.252 * HTML.pm.src (_get_next_token): A parse error was missing.
616    
617     2008-06-01 Wakaba <wakaba@suika.fam.cx>
618    
619 wakaba 1.251 * mklinktypelist.pl: rel=contact is no longer part of the HTML5
620     spec (commented out). (HTML5 revision 1711).
621    
622 wakaba 1.248 2008-05-25 Wakaba <wakaba@suika.fam.cx>
623    
624 wakaba 1.250 * ContentType.pm: Drop support for UTF-32 (HTML5 revision 1701).
625    
626     * HTML.pm.src: UTF-16BE and UTF-16LE should be considered
627     as UTF-16 (HTML5 revision 1701).
628    
629     2008-05-25 Wakaba <wakaba@suika.fam.cx>
630    
631 wakaba 1.249 * HTML.pm.src: Support for <noframes> in <head> (HTML5 revision
632     1692).
633    
634     2008-05-25 Wakaba <wakaba@suika.fam.cx>
635    
636     * HTML.pm.src: The secondary insertion mode used when switching
637     to foreign content is the "in body" insertion mode (HTML5 revision
638     1696).
639    
640     2008-05-25 Wakaba <wakaba@suika.fam.cx>
641    
642 wakaba 1.248 * HTML.pm.src: Don't raise parse error for <isindex/> (HTML5
643     revision 1697).
644    
645 wakaba 1.239 2008-05-24 Wakaba <wakaba@suika.fam.cx>
646    
647 wakaba 1.247 * HTML.pm.src: Support for end-of-file token in foreign content
648     insertion mode (HTML5 revision 1693). Update SVG camelCase
649     attribute list (HTML5 revision 1700). <textarea> closes
650     </select> (HTML5 revision 1699). More start tags close in
651     foreign content insertion mode (HTML5 revision 1698).
652    
653     2008-05-24 Wakaba <wakaba@suika.fam.cx>
654    
655 wakaba 1.246 * HTML.pm.src: ";" is not part of charset name (HTML5 revision 1665).
656    
657     2008-05-24 Wakaba <wakaba@suika.fam.cx>
658    
659 wakaba 1.245 * HTML.pm.src: More robust charset parameter detection (HTML5
660     revision 1674).
661    
662     2008-05-24 Wakaba <wakaba@suika.fam.cx>
663    
664 wakaba 1.244 * ContentType.pm: Support for image/vnd.microsoft.icon (HTML5
665     revision 1676).
666    
667     2008-05-24 Wakaba <wakaba@suika.fam.cx>
668    
669 wakaba 1.243 * HTML.pm.src: Ignore language part of public identifiers for
670     quriks mode detection (HTML5 revision 1679).
671    
672     2008-05-24 Wakaba <wakaba@suika.fam.cx>
673    
674 wakaba 1.242 * HTML.pm.src: Reduce the number of errors in truncated doctypes (HTML5
675     revision 1685).
676    
677     2008-05-24 Wakaba <wakaba@suika.fam.cx>
678    
679 wakaba 1.241 * HTML.pm.src: Support for EOF in new states for tags (HTML5
680     revision 1684).
681    
682     2008-05-24 Wakaba <wakaba@suika.fam.cx>
683    
684 wakaba 1.240 * HTML.pm.src (_reset_insertion_mode): Make <td>.innerHTML
685     work (HTML5 revision 1690).
686    
687     2008-05-24 Wakaba <wakaba@suika.fam.cx>
688    
689 wakaba 1.239 * HTML.pm.src (_tree_construction_main): Change handling of
690     end tags in head insertion modes (HTML5 revision 1686).
691     (parse_char_string): Bug fix for non-utf8 character string handlings.
692     (parse_char_stream): |ungetc| does not work well for this context.
693    
694 wakaba 1.237 2008-05-18 Wakaba <wakaba@suika.fam.cx>
695    
696 wakaba 1.238 * HTML.pm.src (parse_byte_string): Redefined to invoke
697     |parse_byte_stream|.
698     (parse_byte_stream): New method.
699    
700     2008-05-18 Wakaba <wakaba@suika.fam.cx>
701    
702 wakaba 1.237 * HTML.pm.src (parse_byte_string): Fix the column number reported
703     by encoding layer error reporter.
704    
705 wakaba 1.233 2008-05-17 Wakaba <wakaba@suika.fam.cx>
706    
707 wakaba 1.236 * HTML.pm.src (parse_byte_string): Use streaming decoder
708     rather than converting the whole byte string and then parsing.
709     Propagate errors in character encoding layer.
710     (get_next_token): Precise error reporting for |bare stago| error.
711    
712     2008-05-17 Wakaba <wakaba@suika.fam.cx>
713    
714 wakaba 1.235 * HTML.pm.src (parse_char_stream): New method.
715     (parse_char_string): This method is now defined as an invocation
716     of the |parse_char_stream| method.
717    
718     2008-05-17 Wakaba <wakaba@suika.fam.cx>
719    
720 wakaba 1.234 * HTML.pm.src (parse_byte_string): Report various status
721     of the sniffing as info-level errors. Support for new
722     decoding framework in parser resestting.
723     (new): Various default error levels were not set.
724    
725     2008-05-17 Wakaba <wakaba@suika.fam.cx>
726    
727 wakaba 1.233 * HTML.pm.src (parse_byte_string): HTML5 encoding siniffing
728     algorithm, except for the actual sniffing, is implemented
729     with new framework with Message::Charset::Info.
730    
731 wakaba 1.232 2008-05-16 Wakaba <wakaba@suika.fam.cx>
732    
733     * CacheManifest.pm (_parse): Drop fragment identifiers from
734     URIs in fallback section (HTML5 revision 1596).
735    
736 wakaba 1.230 2008-05-10 Wakaba <wakaba@suika.fam.cx>
737    
738 wakaba 1.231 * Makefile (Entities.html): URI has changed.
739    
740     2008-05-10 Wakaba <wakaba@suika.fam.cx>
741    
742 wakaba 1.230 * CacheManifest.pm: Don't replace U+0000 NULL (HTML5 revision
743     1553).
744    
745 wakaba 1.228 2008-05-06 Wakaba <wakaba@suika.fam.cx>
746    
747 wakaba 1.229 * ContentChecker.pm: Noted that those returned in |table| are
748     no longer table elements, but table objects returned
749     by Whatpm::HTMLTable.
750    
751     * HTMLTable.pm (form_table): Return table element node
752     as |$table->{element}|.
753     (assign_header): Support for the |headers=""| attribute.
754    
755     2008-05-06 Wakaba <wakaba@suika.fam.cx>
756    
757 wakaba 1.228 * HTMLTable.pm (assign_header): New function; first version
758     with no support for headers="".
759     (form_table): Include table width and height to the returned
760     table object for covenience. Indexing in column assignement was wrong.
761     Set whether a data cell is empty or not for convenience.
762    
763 wakaba 1.222 2008-05-05 Wakaba <wakaba@suika.fam.cx>
764    
765 wakaba 1.227 * HTMLTable.pm: Robuster caption support (HTML5 revision 1393).
766    
767     2008-05-05 Wakaba <wakaba@suika.fam.cx>
768    
769 wakaba 1.226 * HTMLTable.pm: How table model errors are detected is
770     changed (HTML5 revision 1387).
771    
772     2008-05-05 Wakaba <wakaba@suika.fam.cx>
773    
774 wakaba 1.225 * HTMLTable.pm: The algorithm now moves |tfoot| elements
775     to the end of the table (HTML5 revision 1380).
776    
777     2008-05-05 Wakaba <wakaba@suika.fam.cx>
778    
779 wakaba 1.224 * HTMLTable.pm: The algorithm is now 0-based indexing, instead
780     of 1-based (HTML5 revision 1376).
781    
782     2008-05-05 Wakaba <wakaba@suika.fam.cx>
783    
784 wakaba 1.223 * ContentType.pm: "Content-Type: text/plain; charset=UTF-8"
785     and "Content-Encoding" no longer prevent sniffing (HTML5
786     revision 1288).
787    
788     2008-05-05 Wakaba <wakaba@suika.fam.cx>
789    
790 wakaba 1.222 * ContentType.pm: Skip BOMs n feed or HTML algorithm (HTML5 revision
791     1282).
792    
793 wakaba 1.220 2008-05-03 Wakaba <wakaba@suika.fam.cx>
794    
795 wakaba 1.221 * ContentChecker.pm: Support for global attributes.
796     Status of XML specs are added.
797    
798     2008-05-03 Wakaba <wakaba@suika.fam.cx>
799    
800 wakaba 1.220 * ContentChecker.pm (check_element): Support for |template=""|
801     and |ref=""| attribute (referent element type checking).
802    
803 wakaba 1.218 2008-04-29 Wakaba <wakaba@suika.fam.cx>
804    
805 wakaba 1.219 * CacheManifest.pm (_parse): New same origin definition (HTML5 revision
806     1500) is implemented (except for IDNA part and URI-scheme-specific
807 wakaba 1.218 knowledge). Line number counting was wrong for LF-only
808     documents.
809    
810 wakaba 1.211 2008-04-13 Wakaba <wakaba@suika.fam.cx>
811    
812 wakaba 1.217 * HTML.pm.src: Raise an parse error for any disallowed
813     character (HTML5 revision 1263).
814    
815     2008-04-13 Wakaba <wakaba@suika.fam.cx>
816    
817 wakaba 1.216 * mkentitylist.pl: Support for new HTML5 entity table format (the
818     definition for |AElig;| was missing).
819    
820     2008-04-13 Wakaba <wakaba@suika.fam.cx>
821    
822 wakaba 1.215 * HTML.pm.src, mkhtmlparser.pl: Support for element/attribute
823     name/namespace fixup (HTML5 revisions 1413, 1415, 1416, and 1417).
824    
825     2008-04-13 Wakaba <wakaba@suika.fam.cx>
826    
827 wakaba 1.214 * HTML.pm.src: List of element names that close foreign content
828     insertion mode is added (HTML5 revisions 1412 and 1418).
829    
830     2008-04-13 Wakaba <wakaba@suika.fam.cx>
831    
832 wakaba 1.213 * HTML.pm.src: Support for |mglyph| and |malignmark|
833     elements (HTML5 revision 1410).
834    
835     2008-04-13 Wakaba <wakaba@suika.fam.cx>
836    
837 wakaba 1.212 * HTML.pm.src: Support for new long MathML entities (HTML5
838     revision 1406).
839    
840     2008-04-13 Wakaba <wakaba@suika.fam.cx>
841    
842 wakaba 1.211 * HTML.pm.src: CDATA section support for MathML and SVG
843     elements (HTML5 revision 1404 and 1420).
844    
845 wakaba 1.209 2008-04-12 Wakaba <wakaba@suika.fam.cx>
846    
847 wakaba 1.210 * HTML.pm.src, mkhtmlparser.pl: Support for MathML and SVG
848     elements (HTML5 revision 1404). Unused !!!macro definitions
849     are removed.
850    
851     2008-04-12 Wakaba <wakaba@suika.fam.cx>
852    
853 wakaba 1.209 * HTML.pm.src, mkhtmlparser.pl: The way permitted slash errors
854     are raised is changed (HTML5 revision 1404).
855    
856 wakaba 1.206 2008-04-06 Wakaba <wakaba@suika.fam.cx>
857    
858 wakaba 1.208 * HTML.pm.src: Category sets that are no longer used are removed.
859    
860     2008-04-06 Wakaba <wakaba@suika.fam.cx>
861    
862 wakaba 1.207 * HTML.pm.src: The ->[1] property of stack entries are now
863     replaced by constants representing element category.
864    
865     2008-04-06 Wakaba <wakaba@suika.fam.cx>
866    
867 wakaba 1.206 * HTML.pm.src: Don't use local name stored in stack (i.e. ->[1])
868     for error reporting. (This is a preparation for using constant
869     value for ->[1].)
870    
871 wakaba 1.204 2008-03-22 Wakaba <wakaba@suika.fam.cx>
872    
873 wakaba 1.205 * RDFXML.pm: Typo fixed.
874    
875     2008-03-22 Wakaba <wakaba@suika.fam.cx>
876    
877 wakaba 1.204 * ContentChecker.pm: |fact_level| is now treated
878     as same as |must_level|, i.e. level = |m|.
879     (check_element): Make list of URIs in the DOM.
880    
881 wakaba 1.197 2008-03-21 Wakaba <wakaba@suika.fam.cx>
882    
883 wakaba 1.203 * RDFXML.pm: Language accessor implemented.
884     Local (null-namespace) attribute support.
885    
886     2008-03-21 Wakaba <wakaba@suika.fam.cx>
887    
888 wakaba 1.202 * RDFXML.pm: Factored out ID checking code.
889    
890     2008-03-21 Wakaba <wakaba@suika.fam.cx>
891    
892 wakaba 1.201 * RDFXML.pm: TODO items noted. Validation of ID
893     and URI attributes is implemented. Warn if unknown
894     value is used in rdf:parseType="" attribute.
895    
896     * URIChecker.pm (check_rdf_uri_reference): New function.
897    
898     2008-03-21 Wakaba <wakaba@suika.fam.cx>
899    
900 wakaba 1.200 * RDFXML.pm: bnodeid implemented. Relative references
901     are now resolved.
902    
903     2008-03-21 Wakaba <wakaba@suika.fam.cx>
904    
905 wakaba 1.199 * ContentChecker.pm: RDF reification implemented.
906    
907     * RDFXML.pm: undef vs false bug fixed.
908     Reification implemented.
909    
910     2008-03-21 Wakaba <wakaba@suika.fam.cx>
911    
912 wakaba 1.198 * RDFXML.pm: s/id/ID/ for attribute name.
913     The |node| arguments are added for |ontriple| calls.
914     Too many "attribute not allowed" errors were raised.
915    
916     * ContentChecker.pm: Initial experimental support for rdf:RDF
917     element.
918    
919     2008-03-21 Wakaba <wakaba@suika.fam.cx>
920    
921 wakaba 1.197 * RDFXML.pm: New module.
922    
923 wakaba 1.192 2008-03-20 Wakaba <wakaba@suika.fam.cx>
924    
925 wakaba 1.196 * HTML.pm.src (set_inner_html): Line/column number
926     code was old one yet.
927    
928     2008-03-20 Wakaba <wakaba@suika.fam.cx>
929    
930 wakaba 1.195 * HTML.pm.src: Better line/column reporting for "duplicate attribute"
931     errors. Line/column markings for DOCTYPE, comment, and
932     character tokens are reintroduced; otherwise,
933     error location for "not HTML5" error and errors
934     for implied elements are not attached.
935    
936     2008-03-20 Wakaba <wakaba@suika.fam.cx>
937    
938 wakaba 1.194 * HTML.pm.src: Set line/column numbers to attributes.
939    
940     * NanoDOM.pm (create_attribute_ns, set_attribute_node_ns): Added.
941     (value): Setter implemented.
942    
943     * mkhtmlparser.pl: Set line/column numbers to Attr nodes.
944    
945     2008-03-20 Wakaba <wakaba@suika.fam.cx>
946    
947 wakaba 1.193 * HTML.pm.src: Unused line/column markings are removed.
948    
949     2008-03-20 Wakaba <wakaba@suika.fam.cx>
950    
951 wakaba 1.192 * HTML.pm.src (_get_next_token): Remove |first_start_tag|
952     flag, which is no longer used.
953    
954 wakaba 1.190 2008-03-17 Wakaba <wakaba@suika.fam.cx>
955    
956 wakaba 1.191 * HTML.pm.src: Set line/column information to element nodes.
957    
958     * mkhtmlparser.pl (!!!create-element, !!!insert-element,
959     and !!!insert-element-t): Set line/column information to
960     element nodes.
961    
962     2008-03-17 Wakaba <wakaba@suika.fam.cx>
963    
964 wakaba 1.190 * HTML.pm.src (_get_next_token): The first "<" character
965     in "<?", "<>", or "</>" should be the error point.
966    
967 wakaba 1.187 2008-03-16 Wakaba <wakaba@suika.fam.cx>
968    
969 wakaba 1.189 * HTML.pm.src: Some more fixes on error position reporting.
970    
971     2008-03-16 Wakaba <wakaba@suika.fam.cx>
972    
973 wakaba 1.188 * HTML.pm.src: Token-level precious error reporting.
974    
975     2008-03-16 Wakaba <wakaba@suika.fam.cx>
976    
977 wakaba 1.187 * HTML.pm.src: Preparation for more precious error point
978     reporting.
979    
980 wakaba 1.184 2008-03-11 Wakaba <wakaba@suika.fam.cx>
981    
982 wakaba 1.186 * HTML.pm.src: Error type revised.
983    
984     2008-03-11 Wakaba <wakaba@suika.fam.cx>
985    
986 wakaba 1.185 * HTML.pm.src: Similar codes are merged together, again.
987    
988     2008-03-11 Wakaba <wakaba@suika.fam.cx>
989    
990 wakaba 1.184 * HTML.pm.src: Similar codes are merged together.
991    
992 wakaba 1.183 2008-03-10 Wakaba <wakaba@suika.fam.cx>
993    
994     * mkhtmlparser.pl: Set "level" parameter to parse errors.
995    
996     * HTML.pm.src: Code refined.
997    
998 wakaba 1.175 2008-03-09 Wakaba <wakaba@suika.fam.cx>
999    
1000 wakaba 1.182 * HTML.pm.src: |</body>| treatement has been changed (HTML5
1001     revision 1348). Note that I really don't know this makes
1002     any difference in the black-box behavior of the parser.
1003    
1004     2008-03-09 Wakaba <wakaba@suika.fam.cx>
1005    
1006 wakaba 1.181 * HTML.pm.src: New end-of-file token implementation (HTML5
1007     revision 1348).
1008    
1009     2008-03-09 Wakaba <wakaba@suika.fam.cx>
1010    
1011 wakaba 1.180 * HTML.pm.src: |applet| support (HTML5 revision 1347).
1012    
1013     2008-03-09 Wakaba <wakaba@suika.fam.cx>
1014    
1015 wakaba 1.179 * HTML.pm.src: Foster parenting in AAA (HTML5 revision 1343).
1016    
1017     2008-03-09 Wakaba <wakaba@suika.fam.cx>
1018    
1019 wakaba 1.178 * HTML.pm.src: Support for |<input>| in the "in select" insertion
1020     mode and support for the "in select in table" insertion mode (HTML5
1021     revision 1342).
1022    
1023     2008-03-09 Wakaba <wakaba@suika.fam.cx>
1024    
1025 wakaba 1.177 * HTML.pm.src: No foster parenting for <script> and <script>
1026     in non-tainted <table>s (HTML5 revision 1336).
1027    
1028     2008-03-09 Wakaba <wakaba@suika.fam.cx>
1029    
1030 wakaba 1.176 * HTML.pm.src: Ignore white space characters between <html>
1031     and <head> (HTML5 revision 1332).
1032    
1033     2008-03-09 Wakaba <wakaba@suika.fam.cx>
1034    
1035 wakaba 1.175 * HTML.pm.src: Treat <input type=hidden> as if it were a
1036     white space (HTML5 revision 1331).
1037    
1038 wakaba 1.164 2008-03-08 Wakaba <wakaba@suika.fam.cx>
1039    
1040 wakaba 1.174 * HTML.pm.src: Ignore U+000A at the beginning of a |listing|
1041     element (HTML5 revision 1330).
1042    
1043     2008-03-08 Wakaba <wakaba@suika.fam.cx>
1044    
1045 wakaba 1.173 * HTML.pm.src: <title> is always appended to the current
1046     element (HTML5 revision 1328).
1047    
1048     2008-03-08 Wakaba <wakaba@suika.fam.cx>
1049    
1050 wakaba 1.172 * HTML.pm.src: White space in tainted tables are moved
1051     into foster parents (HTML5 revision 1326).
1052    
1053     2008-03-08 Wakaba <wakaba@suika.fam.cx>
1054    
1055 wakaba 1.171 * HTML.pm.src: Reduce errors from foster parenting cases (HTML5
1056     revision 1321).
1057    
1058     2008-03-08 Wakaba <wakaba@suika.fam.cx>
1059    
1060 wakaba 1.170 * HTML.pm.src: |</h/n/>| case code rearranged to align with
1061     the spec (HTML5 revision 1320). Note that we finally complete
1062     all of HTML5 revision 1320 changes.
1063    
1064     2008-03-08 Wakaba <wakaba@suika.fam.cx>
1065    
1066 wakaba 1.169 * HTML.pm.src: |</form>| now works similar to |</div>| for unclosed
1067     tags (HTML5 revision 1320).
1068    
1069     2008-03-08 Wakaba <wakaba@suika.fam.cx>
1070    
1071 wakaba 1.168 * HTML.pm.src: |</p>| case rearranged with no actual change in fact.
1072    
1073     2008-03-08 Wakaba <wakaba@suika.fam.cx>
1074    
1075 wakaba 1.167 * HTML.pm.src: A "generate implied end tags" code (t409.1)
1076     could not be reached so that it is now removed (HTML5 revision
1077     1320).
1078    
1079     2008-03-08 Wakaba <wakaba@suika.fam.cx>
1080    
1081 wakaba 1.166 * HTML.pm.src: Code for the case of |</div>| and so on are revised
1082     to align with new spec text (HTML5 revision 1320).
1083    
1084     2008-03-08 Wakaba <wakaba@suika.fam.cx>
1085    
1086 wakaba 1.165 * HTML.pm.src: Remove strange |if| condition; however, it should
1087     have had no harm in theory.
1088    
1089     2008-03-08 Wakaba <wakaba@suika.fam.cx>
1090    
1091 wakaba 1.164 * HTML.pm.src (_tree_construction_main): '</p>' in body
1092     case is split from other end tags for the preparation
1093     of implementing HTML revision 1320.
1094    
1095 wakaba 1.162 2008-03-07 Wakaba <wakaba@suika.fam.cx>
1096    
1097 wakaba 1.163 * HTML.pm.src: Simplified "generate implied end tag" (HTML5
1098     revision 1320).
1099    
1100     2008-03-07 Wakaba <wakaba@suika.fam.cx>
1101    
1102 wakaba 1.162 * HTML.pm.src (_tree_construction_main): Merge rules for "h1"
1103     and "div" (HTML5 revision 1318). Add comments to where
1104     |form| pointer association codes should be inserted (HTML5 revision
1105     1319).
1106    
1107 wakaba 1.161 2008-03-06 Wakaba <wakaba@suika.fam.cx>
1108    
1109     * HTML.pm.src: <html> treatement refined (HTML5 revision 1314).
1110    
1111 wakaba 1.159 2008-03-05 Wakaba <wakaba@suika.fam.cx>
1112    
1113 wakaba 1.160 * HTML.pm.src: Since the case t268 should never be reached (no
1114     other token type, there are), it is replaced by a |die| statement.
1115    
1116     2008-03-05 Wakaba <wakaba@suika.fam.cx>
1117    
1118 wakaba 1.159 * HTML.pm.src: Typo fixed.
1119    
1120 wakaba 1.158 2008-03-04 Wakaba <wakaba@suika.fam.cx>
1121    
1122     * HTML.pm.src (_tree_construction_initial): Some limited quirks
1123     doctypes were not uppercased for comparison.
1124    
1125 wakaba 1.152 2008-03-03 Wakaba <wakaba@suika.fam.cx>
1126    
1127 wakaba 1.157 * HTML.pm.src (tree construction and set_inner_html): Checkpoints
1128     are added.
1129    
1130     2008-03-03 Wakaba <wakaba@suika.fam.cx>
1131    
1132 wakaba 1.156 * HTML.pm.src (_tokenize_attempt_to_consume_an_entity): Checkpoints
1133     are set. Cases that are unlikely reached are noted as so.
1134    
1135     2008-03-03 Wakaba <wakaba@suika.fam.cx>
1136    
1137 wakaba 1.155 * HTML.pm.src: Checkpoints for debugging are added.
1138    
1139     * mkhtmlparser.pl: Support for |!!!cp| syntax.
1140    
1141     2008-03-03 Wakaba <wakaba@suika.fam.cx>
1142    
1143 wakaba 1.154 * HTML.pm.src, mkhtmlparser.pl: s/_input_character/_char/g
1144     for simplicity.
1145    
1146     2008-03-03 Wakaba <wakaba@suika.fam.cx>
1147    
1148 wakaba 1.153 * HTML.pm.src: Flag name changed: s/correct/force-quirks/g (HTML5
1149     revision 1307).
1150    
1151     2008-03-03 Wakaba <wakaba@suika.fam.cx>
1152    
1153 wakaba 1.152 * HTML.pm.src (_get_next_token): Where the /incorrect/ flag
1154     is set are changed (HTML5 revision 1305).
1155    
1156 wakaba 1.149 2008-03-02 Wakaba <wakaba@suika.fam.cx>
1157    
1158 wakaba 1.151 * HTML.pm.src: Raise a parse error for |<span ===>| (HTML5 revision
1159     1292). Entities are not parsed in comment-like part in RCDATA
1160     elements (HTML5 revision 1294). Allow bare & at the end
1161     of attribute value literals (HTML5 revision 1296). More
1162     quirks mode doctypes (HTML5 revision 1302). Requires spaces
1163     between attributes and ban attribute names or unquoted
1164     attribute values containing single or double quotes (HTML5
1165     revision 1303).
1166    
1167     2008-03-02 Wakaba <wakaba@suika.fam.cx>
1168    
1169 wakaba 1.150 * ContentChecker.pm: Typo fixed. Don't raise "character encoding"
1170     and related errors unless it is an HTML document (though the spec
1171     is unclear on whether it is applied to XHTML document).
1172    
1173     * HTML.pm (%HTMLAttrStatus): WF2 repetition model attributes
1174     are added.
1175    
1176     2008-03-02 Wakaba <wakaba@suika.fam.cx>
1177    
1178 wakaba 1.149 * HTML.pm.src: s/local_name/manakai_local_name/g.
1179    
1180 wakaba 1.148 2008-03-01 Wakaba <wakaba@suika.fam.cx>
1181    
1182     * _NamedEntityList.pm: Updated (HTML5 revision 1286).
1183    
1184     * HTML.pm.src: |charset| in |content| attribute is
1185     case-insensitive (HTML5 revision 1270).
1186    
1187 wakaba 1.147 2008-02-26 Wakaba <wakaba@suika.fam.cx>
1188    
1189     * ContentChecker.pm: New status constants are added.
1190     ($ElementDefault): |status| added.
1191     (check_element): Err for non-standard or deprecated elements.
1192     (_attr_status_info): For non-standard or deprecated attributes.
1193    
1194 wakaba 1.142 2008-02-24 Wakaba <wakaba@suika.fam.cx>
1195    
1196 wakaba 1.146 * ContentChecker.pm (_attr_status_info): New internal method.
1197    
1198     2008-02-24 Wakaba <wakaba@suika.fam.cx>
1199    
1200 wakaba 1.145 * ContentChecker.pm (check_element): Element standardized
1201     status information is now dispatched.
1202    
1203     2008-02-24 Wakaba <wakaba@suika.fam.cx>
1204    
1205 wakaba 1.144 * ContentChecker.pm (check_element): Fix |del|-and-significant
1206     problem by adding some more arguments.
1207    
1208     2008-02-24 Wakaba <wakaba@suika.fam.cx>
1209    
1210 wakaba 1.143 * ContentChecker.pm (check_element): Use context of
1211     container-for-the-purpose-of-content-model element (not transparent
1212     element) for |check_child_element| calling and significant
1213     text flag marking. This reintroduces |<del>|-and-significant
1214     problem again.
1215    
1216     2008-02-24 Wakaba <wakaba@suika.fam.cx>
1217    
1218 wakaba 1.142 * ContentChecker.pm (check_element): Make semi-transparent
1219     elements ignored for the purpose of phase changes in
1220     content model checking.
1221    
1222 wakaba 1.138 2008-02-23 Wakaba <wakaba@suika.fam.cx>
1223    
1224 wakaba 1.141 * ContentChecker.pm (check_element): In-element state
1225     was not properly managed for transparent cases.
1226    
1227     2008-02-23 Wakaba <wakaba@suika.fam.cx>
1228    
1229 wakaba 1.140 * ContentChecker.pm (check_element): Support for |video|
1230     and |audio| as semi-transparent elements.
1231    
1232     2008-02-23 Wakaba <wakaba@suika.fam.cx>
1233    
1234 wakaba 1.139 * ContentChecker.pm ($HTMLSemiTransparentElements): New.
1235     (check_element): s/minuses/minus_elements/, s/pluses/plus_elements/.
1236     Support for |html:object| as a semi-transparent element.
1237    
1238     2008-02-23 Wakaba <wakaba@suika.fam.cx>
1239    
1240 wakaba 1.138 * ContentChecker.pm (check_element): The way to traverse
1241     the tree is entirely revised to make it easier to track
1242     the state of ancestors/descendants. As a result of this
1243     revision (which rewrites almost all of Whatpm::ContentChecker::HTML),
1244     support for content model checking for HTML elements |figure|,
1245     |object|, |video|, and |audio| and checking for XML elements (and
1246     some XMLNS checkings) are dropped for now. They will be
1247     reimplemented in due cource.
1248    
1249 wakaba 1.134 2008-02-17 Wakaba <wakaba@suika.fam.cx>
1250    
1251 wakaba 1.137 * HTML.pm.src: |>| in public or system literal closes the DOCTYPE
1252     token (HTML5 revision 1225).
1253    
1254     2008-02-17 Wakaba <wakaba@suika.fam.cx>
1255    
1256 wakaba 1.136 * ContentChecker.pm ({unsupported_level}): New value.
1257    
1258     * HTML.pm.src: Save whether |meta| |content| attribute
1259     contains character references or not.
1260    
1261     2008-02-17 Wakaba <wakaba@suika.fam.cx>
1262    
1263 wakaba 1.135 * ContentChecker.pm (_get_children): (Incompleted) attempt to
1264     imlement significant content checking for contents
1265     with |del| elements.
1266    
1267     2008-02-17 Wakaba <wakaba@suika.fam.cx>
1268    
1269 wakaba 1.134 * ContenteChecker.pm ($HTMLTransparentElements): More
1270     elements are added.
1271     (_get_children): HTML |object| elements are now semi-transparent.
1272    
1273     * NanoDOM.pm (manakai_html, manakai_head): New methods.
1274    
1275 wakaba 1.133 2008-02-16 Wakaba <wakaba@suika.fam.cx>
1276    
1277     * CacheManifest.pm: HTML5 revision 1211 implemented.
1278    
1279     * CacheManifest.pod: Updated.
1280    
1281 wakaba 1.132 2008-02-10 Wakaba <wakaba@suika.fam.cx>
1282    
1283     * ContentChecker.pm (check_document, check_element): Support
1284     for second argument ($onsubdoc).
1285     (_get_css_parser): Removed (now it is part of WDCC).
1286    
1287 wakaba 1.131 2008-02-09 Wakaba <wakaba@suika.fam.cx>
1288    
1289     * ContentChecker.pm (_get_css_parser): New.
1290    
1291 wakaba 1.129 2007-11-25 Wakaba <wakaba@suika.fam.cx>
1292    
1293 wakaba 1.130 * ContentChecker.pm ($AnyChecker): Old way to add child elements
1294     for checking had been used.
1295    
1296     2007-11-25 Wakaba <wakaba@suika.fam.cx>
1297    
1298 wakaba 1.129 * ContentChecker.pm (check_element): New todo item type |descendant|.
1299    
1300 wakaba 1.125 2007-11-23 Wakaba <wakaba@suika.fam.cx>
1301    
1302 wakaba 1.128 * IMTChecker.pm: Revised to raise errors and warnings as (poorly)
1303     specced in RFC 2046 and RFC 4288.
1304     (application/atom+xml): Definition added.
1305    
1306     2007-11-23 Wakaba <wakaba@suika.fam.cx>
1307    
1308 wakaba 1.127 * URIChecker.pm: Make RFC 3986 should-level errors
1309     warnings (rather than SHOULD-level errors).
1310    
1311     2007-11-23 Wakaba <wakaba@suika.fam.cx>
1312    
1313 wakaba 1.126 * NanoDOM.pm (get_user_data, set_user_data): New methods.
1314    
1315     * HTML.pm.src: A flag for character references in attribute
1316     values are added. Set |manakai_has_reference| user data
1317     to |charset| attribute.
1318    
1319     2007-11-23 Wakaba <wakaba@suika.fam.cx>
1320    
1321 wakaba 1.125 * NanoDOM.pm (input_encoding, manakai_charset, manakai_has_bom): New
1322     attributes.
1323    
1324     * ContentChecker.pm (check_document): Warn if charset requirements
1325     cannot be tested.
1326    
1327 wakaba 1.124 2007-11-19 Wakaba <wakaba@suika.fam.cx>
1328    
1329     * HTML.pm.src (parse_byte_string): Detect charset
1330     by universalchardet if charset parameter is not specified.
1331    
1332     * Makefile (Charset-all, Charset-clean): New rules.
1333    
1334 wakaba 1.120 2007-11-18 Wakaba <wakaba@suika.fam.cx>
1335    
1336 wakaba 1.123 * ContentChecker.pm (check_document): Check the existence
1337     of character encoding declaration and selection of encoding
1338     for HTML document.
1339    
1340     2007-11-18 Wakaba <wakaba@suika.fam.cx>
1341    
1342 wakaba 1.122 * ContentType.pm (get_sniffed_type): Return also the official
1343     type in list context.
1344    
1345     2007-11-18 Wakaba <wakaba@suika.fam.cx>
1346    
1347 wakaba 1.121 * ContentType.pm: Sniffing with leading white space
1348     ignoring (HTML5 revisions 1013 and 1016).
1349    
1350     2007-11-18 Wakaba <wakaba@suika.fam.cx>
1351    
1352 wakaba 1.120 * ContentType.pm: HTML5 revision 1013 changes, except for leading
1353     white spaces, are implemented.
1354    
1355 wakaba 1.117 2007-11-11 Wakaba <wakaba@suika.fam.cx>
1356    
1357 wakaba 1.119 * HTML.pm.src (parse_char_string): Set |inner_encoding|
1358     attribute if possible.
1359    
1360     2007-11-11 Wakaba <wakaba@suika.fam.cx>
1361    
1362 wakaba 1.118 * HTML.pm.src (parse_byte_string): New method.
1363     (parse_char_string): New alias for |parse_string|.
1364     (main phase): Invoking "change the encoding" algorithm if desired.
1365    
1366     * HTML.pod: Updated.
1367    
1368     2007-11-11 Wakaba <wakaba@suika.fam.cx>
1369    
1370 wakaba 1.117 * HTML.pod (get_inner_html): Removed.
1371    
1372     * Makefile (HTML-all, HTML-clean): New.
1373    
1374     2007-11-11 Wakaba <wakaba@suika.fam.cx>
1375    
1376     * HTML.pm.src (get_inner_html): Removed (moved to HTML/Serializer.pm).
1377    
1378 wakaba 1.116 2007-11-08 Wakaba <wakaba@suika.fam.cx>
1379    
1380     * mklinktypelist.pl: s/noreferer/noreferrer/ (HTML5 revision 1132).
1381    
1382 wakaba 1.112 2007-11-04 Wakaba <wakaba@suika.fam.cx>
1383    
1384 wakaba 1.115 * Makefile: |CacheManifest.html| is added.
1385    
1386     * CacheManifest.pod: New file.
1387    
1388     2007-11-04 Wakaba <wakaba@suika.fam.cx>
1389    
1390 wakaba 1.114 * CacheManifest.pm: New module.
1391    
1392     2007-11-04 Wakaba <wakaba@suika.fam.cx>
1393    
1394 wakaba 1.113 * HTML.pm.src: Support for application cache selection algorithm
1395     callback.
1396    
1397     2007-11-04 Wakaba <wakaba@suika.fam.cx>
1398    
1399 wakaba 1.112 * mklinktypelist.pl: Support for rel=noreferer (HTML5 revision 1118).
1400    
1401 wakaba 1.110 2007-10-17 Wakaba <wakaba@suika.fam.cx>
1402    
1403 wakaba 1.111 * Makefile (clean): New rule.
1404    
1405     * NanoDOM.pm (public_id, system_id): New attributes.
1406    
1407     2007-10-17 Wakaba <wakaba@suika.fam.cx>
1408    
1409 wakaba 1.110 * Makefile (CSS-all, CSS-clean, clean): New rules.
1410    
1411 wakaba 1.109 2007-10-14 Wakaba <wakaba@suika.fam.cx>
1412    
1413     * ContentChecker.pm (check_document): Support for
1414     new |is_xml_root| flag.
1415     (check_element): Support for new |pluses| state.
1416     (_add_pluses): New method.
1417     (_remove_minuses): Support for new |minus| item.
1418    
1419 wakaba 1.106 2007-09-24 Wakaba <wakaba@suika.fam.cx>
1420    
1421 wakaba 1.107 * ContentChecker.pm: Raise specific error for invalid
1422     root element.
1423    
1424     2007-09-24 Wakaba <wakaba@suika.fam.cx>
1425    
1426 wakaba 1.106 * ContentChecker.pm: Set level values for later uses.
1427    
1428 wakaba 1.103 2007-09-09 Wakaba <wakaba@suika.fam.cx>
1429    
1430 wakaba 1.105 * ContentChecker.pm: Support for language tag validation.
1431    
1432     2007-09-09 Wakaba <wakaba@suika.fam.cx>
1433    
1434 wakaba 1.104 * LangTag.pm (check_rfc3066_language_tag): New method.
1435    
1436     2007-09-09 Wakaba <wakaba@suika.fam.cx>
1437    
1438 wakaba 1.103 * LangTag.pm: New module.
1439    
1440 wakaba 1.102 2007-09-04 Wakaba <wakaba@suika.fam.cx>
1441    
1442     * HTML.pm.src: Some error types were wrong.
1443    
1444 wakaba 1.100 2007-08-17 Wakaba <wakaba@suika.fam.cx>
1445    
1446 wakaba 1.101 * CSS/: New directory.
1447    
1448     2007-08-17 Wakaba <wakaba@suika.fam.cx>
1449    
1450 wakaba 1.100 * ContentChecker.pm (_check_get_children): Support
1451     for |noscript| in |head|.
1452    
1453 wakaba 1.99 2007-08-12 Wakaba <wakaba@suika.fam.cx>
1454    
1455     * URI/: New directory.
1456    
1457 wakaba 1.94 2007-08-11 Wakaba <wakaba@suika.fam.cx>
1458    
1459 wakaba 1.98 * HTML.pm.src: Tokenizer's states are now represented in
1460     number.
1461    
1462     2007-08-11 Wakaba <wakaba@suika.fam.cx>
1463    
1464 wakaba 1.97 * HTML.pm.src: |or|s for insertion modes are replaced
1465     by |&|s.
1466    
1467     2007-08-11 Wakaba <wakaba@suika.fam.cx>
1468    
1469 wakaba 1.96 * HTML.pm.src: Token types are now represented in number.
1470    
1471     2007-08-11 Wakaba <wakaba@suika.fam.cx>
1472    
1473 wakaba 1.95 * ContentType.pm (SEE ALSO): Updated.
1474    
1475     * HTML.pm.src: Insertion modes are now represented in number.
1476    
1477     2007-08-11 Wakaba <wakaba@suika.fam.cx>
1478    
1479 wakaba 1.94 * ContentType.pm: Sniffing for bitmap images (HTML5 revision
1480     999) is implemented.
1481    
1482 wakaba 1.93 2007-08-08 Wakaba <wakaba@suika.fam.cx>
1483    
1484     * ContentType.pm: Sniffing for |<script| (HTML5 revision
1485     983) is implemented.
1486    
1487 wakaba 1.92 2007-08-06 Wakaba <wakaba@suika.fam.cx>
1488    
1489     * ContentChecker.pod: New documentation.
1490    
1491     * Makefile: A rule for |ContentChecker.html| is added.
1492    
1493     * ContentChecker.pm: A pod "LICENSE" section is added.
1494    
1495     * NanoDOM.pm ($VERSION): New variable.
1496    
1497 wakaba 1.90 2007-08-05 Wakaba <wakaba@suika.fam.cx>
1498    
1499 wakaba 1.91 * H2H.pm: |b|, |i|, and |sub| are added to the
1500     list of allowed HTML elements.
1501    
1502     2007-08-05 Wakaba <wakaba@suika.fam.cx>
1503    
1504 wakaba 1.90 * H2H.pm: |samp| is added to the list of allowed
1505     HTML elements.
1506    
1507     * URIChecker.pm (check_iri): New.
1508     (check_iri_reference): Error type for IRI reference
1509     syntax error is changed.
1510    
1511 wakaba 1.87 2007-08-04 Wakaba <wakaba@suika.fam.cx>
1512    
1513 wakaba 1.89 * ContentChecker.pm: Reference to the |Whatpm::ContentChecker::Atom|
1514     is added.
1515     (check_document): Load appropriate module before validation.
1516    
1517     2007-08-04 Wakaba <wakaba@suika.fam.cx>
1518    
1519 wakaba 1.88 * ContentChecker/: New directory.
1520    
1521     2007-08-04 Wakaba <wakaba@suika.fam.cx>
1522    
1523 wakaba 1.87 * ContentChecker.pm: HTML |time| element is implemented.
1524    
1525     * HTMLTable.pm: Comments are updated as HTML5 is revised.
1526    
1527 wakaba 1.71 2007-07-21 Wakaba <wakaba@suika.fam.cx>
1528    
1529 wakaba 1.86 * ContentChecker.pm (check_document): Return value
1530     even if no document element is found.
1531    
1532     2007-07-21 Wakaba <wakaba@suika.fam.cx>
1533    
1534 wakaba 1.85 * HTML.pm.src: |$in_body| is no longer a function.
1535    
1536     2007-07-21 Wakaba <wakaba@suika.fam.cx>
1537    
1538 wakaba 1.84 * HTML.pm.src: The |$in_body| code has been moved down.
1539    
1540     2007-07-21 Wakaba <wakaba@suika.fam.cx>
1541    
1542 wakaba 1.83 * HTML.pm.src: The "trailing end" insertion mode
1543     is split into "after html body" and "after html frameset"
1544     insertion modes. Their codes are merged with "after body"
1545     and "after frameset" codes. |$previous_insertion_mode|
1546     has been removed. "after frameset" code is
1547     merged with "in frameset" code.
1548    
1549     2007-07-21 Wakaba <wakaba@suika.fam.cx>
1550    
1551 wakaba 1.82 * HTML.pm.src: The "before head" insertion mode is
1552     merged with the "in head" insertion mode.
1553    
1554     2007-07-21 Wakaba <wakaba@suika.fam.cx>
1555    
1556 wakaba 1.81 * HTML.pm.src: Cases in "in head" insertion mode are
1557     reorganized.
1558    
1559     2007-07-21 Wakaba <wakaba@suika.fam.cx>
1560    
1561 wakaba 1.80 * HTML.pm.src: Some cases in "in table" insertion mode
1562     are merged.
1563    
1564     2007-07-21 Wakaba <wakaba@suika.fam.cx>
1565    
1566 wakaba 1.79 * HTML.pm.src: The "in row" insertion mode is merged
1567     with "in table" insertion mode.
1568    
1569     2007-07-21 Wakaba <wakaba@suika.fam.cx>
1570    
1571 wakaba 1.78 * HTML.pm.src: The "in table" and "in table body" insertion
1572     modes are merged.
1573    
1574     2007-07-21 Wakaba <wakaba@suika.fam.cx>
1575    
1576 wakaba 1.77 * HTML.pm.src: There is no "in table head" or "in table foot"
1577     insertion mode!
1578    
1579     2007-07-21 Wakaba <wakaba@suika.fam.cx>
1580    
1581 wakaba 1.76 * HTML.pm.src: |<noframes>| "in frameset" and "in noframes"
1582     now directly invoke the handler.
1583    
1584     2007-07-21 Wakaba <wakaba@suika.fam.cx>
1585    
1586 wakaba 1.75 * HTML.pm.src: Codes for "in cell" insertion mode
1587     is merged to the "in body" insertion mode code.
1588    
1589     2007-07-21 Wakaba <wakaba@suika.fam.cx>
1590    
1591 wakaba 1.74 * HTML.pm.src: Codes for "in body" and "in caption"
1592     insertion modes are merged.
1593    
1594     2007-07-21 Wakaba <wakaba@suika.fam.cx>
1595    
1596 wakaba 1.73 * HTML.pm.src: Two |!!!next-token|s were missing.
1597    
1598     2007-07-21 Wakaba <wakaba@suika.fam.cx>
1599    
1600 wakaba 1.72 * HTML.pm.src: Use numeric constant for |{content_mode}|
1601     instead of string constant for |{content_model_flag}|.
1602    
1603     2007-07-21 Wakaba <wakaba@suika.fam.cx>
1604    
1605 wakaba 1.71 * HTML.pm.src: Add the name of the attribute
1606     to the "duplicate attribute" error.
1607    
1608 wakaba 1.69 2007-07-17 Wakaba <wakaba@suika.fam.cx>
1609    
1610 wakaba 1.70 * ContentChecker.pm: Return the |class| node list.
1611    
1612     2007-07-17 Wakaba <wakaba@suika.fam.cx>
1613    
1614 wakaba 1.69 * ContentChecker.pm: Return the |id| node list.
1615    
1616     * HTML.pm.src: A typo is fixed.
1617    
1618 wakaba 1.63 2007-07-16 Wakaba <wakaba@suika.fam.cx>
1619    
1620 wakaba 1.68 * ContentChecker.pm: Drop wrong |level => 'error'| specification
1621     from "in HTML:xml:lang" error. Character position
1622     is now the last part of the error type in the URI error
1623     description. Report "unsupported" status for language
1624     tags, media queries, script codes, and style sheets.
1625    
1626     2007-07-16 Wakaba <wakaba@suika.fam.cx>
1627    
1628 wakaba 1.67 * ContentChecker.pm: Report error if |xml:lang|
1629     in HTML, |lang| in XML, |xmlns| in XML, and |meta| |charset|
1630     in XML.
1631    
1632     * NanoDOM.pm (Attr.owner_document): New attribute.
1633    
1634     2007-07-16 Wakaba <wakaba@suika.fam.cx>
1635    
1636 wakaba 1.66 * HTML.pm.src: The character immediately following
1637     a bare |hcro| was discarded. Fix handling of
1638     entity references in attribute values.
1639    
1640     2007-07-16 Wakaba <wakaba@suika.fam.cx>
1641    
1642 wakaba 1.65 * HTML.pm.src (main and trailin end phases): Token
1643     types |DOCTYPE|, |comment|, |end-of-file|, and |<html>| are
1644     factored out. Error types |in html:#DOCTYPE|
1645     and |after html:#DOCTYPE| are merged
1646     into |DOCTYPE in the middle|. |</frameset>|
1647     in fragment parsing mode changed the
1648     insertion mode.
1649    
1650     2007-07-16 Wakaba <wakaba@suika.fam.cx>
1651    
1652 wakaba 1.64 * HTML.pm.src: |$phase| has been removed; The |trailing end|
1653     phase is now an insertion mode. Treatments for white
1654     space character tokens were incorrect for some
1655     insertion modes. An old |meta| case was not removed.
1656    
1657     2007-07-16 Wakaba <wakaba@suika.fam.cx>
1658    
1659 wakaba 1.63 * HTML.pm.src: |meta| charset declaration extraction
1660     implemented (but changing the encoding is not yet:-).
1661    
1662 wakaba 1.60 2007-07-15 Wakaba <wakaba@suika.fam.cx>
1663    
1664 wakaba 1.62 * Charset/: New directory.
1665    
1666     2007-07-15 Wakaba <wakaba@suika.fam.cx>
1667    
1668 wakaba 1.61 * H2H.pm: New Perl module (created from
1669     manakai's H2H.dis).
1670    
1671     2007-07-15 Wakaba <wakaba@suika.fam.cx>
1672    
1673 wakaba 1.60 * XMLSerializer.pm: New Perl module (created from
1674     manakai's SimpleLS.dis).
1675    
1676 wakaba 1.59 2007-07-07 Wakaba <wakaba@suika.fam.cx>
1677    
1678     * HTML.pm.src: |<!---x-->| was not processed correctly.
1679    
1680 wakaba 1.57 2007-07-01 Wakaba <wakaba@suika.fam.cx>
1681    
1682 wakaba 1.58 * HTML.pm.src: Report correct error message
1683     for |<body></div></body>|.
1684    
1685     2007-07-01 Wakaba <wakaba@suika.fam.cx>
1686    
1687 wakaba 1.57 * HTMLTable.pm: An error description was incorrect.
1688    
1689     2007-06-30 Wakaba <wakaba@suika.fam.cx>
1690    
1691     * ContentChecker.pm: Return |{term}| list.
1692    
1693 wakaba 1.55 2007-06-30 Wakaba <wakaba@suika.fam.cx>
1694    
1695 wakaba 1.56 * HTML.pm.src: HTML5 revisions 961-966 (</p>, </br>,
1696     nested <nobr>, implied </tbody>, </tfoot>, and </thead>,
1697     and <title> outside of head).
1698    
1699     2007-06-30 Wakaba <wakaba@suika.fam.cx>
1700    
1701 wakaba 1.55 * IMTChecker.pm: Report warning for unregistered
1702     and private types/subtypes.
1703    
1704     * ContentChecker.pm, HTML.pm.src, IMTChecker.pm,
1705     URIChecker.pm, HTMLTable.pm: Error messages are now
1706     consistent; they are all listed in
1707     <http://suika.fam.cx/gate/2005/sw/Whatpm%20Error%20Types>.
1708    
1709 wakaba 1.52 2007-06-25 Wakaba <wakaba@suika.fam.cx>
1710    
1711 wakaba 1.54 * ContentChecker.pm: |<img ismap>| not in |<a></a>|
1712     is now erred. |<datalist>| is implemented.
1713     Attribute checker for |<command>| and |<menu>| are
1714     added. Support for |contextmenu| global attribute
1715     is added.
1716    
1717     2007-06-25 Wakaba <wakaba@suika.fam.cx>
1718    
1719 wakaba 1.53 * HTML.pm.src (_reset_insertion_mode): Interpretation
1720     of Step 3 has been changed.
1721    
1722     2007-06-25 Wakaba <wakaba@suika.fam.cx>
1723    
1724 wakaba 1.52 * HTML.pm.src: Late |<html>| parse error is implemented.
1725    
1726 wakaba 1.47 2007-06-24 Wakaba <wakaba@suika.fam.cx>
1727    
1728 wakaba 1.51 * URIChecker.pm (check_iri_reference): A |decode| method name was
1729     incorrect.
1730    
1731     * ContentChecker.pm: Support for the |footer| element.
1732     Check URI syntax for space-separated URI attributes.
1733     Support for the |tabindex| attribute. Support
1734     for |datetime| attribute.
1735    
1736     2007-06-24 Wakaba <wakaba@suika.fam.cx>
1737    
1738 wakaba 1.50 * HTML.pm.src: HTML5 revision 1.144 (&#x0D;) and 1.145 (invalid
1739     character references). HTML5 revision 1.146 (white space
1740     characters before root start tag). HTML5 revision
1741     1.148 (named character references in attribute values).
1742     HTML5 revision 1.152 (<plaintext>.innerHTML get).
1743    
1744     2007-06-24 Wakaba <wakaba@suika.fam.cx>
1745    
1746     * HTML.pm.src: HTML5 revisions 1.142 and 1.143 (<noscript>
1747 wakaba 1.49 in <head>).
1748    
1749     2007-06-24 Wakaba <wakaba@suika.fam.cx>
1750    
1751 wakaba 1.48 * HTML.pm.src: HTML5 revision 935 (<base>, <link>, <meta>
1752     in body).
1753    
1754     * ContentChecker.pm: HTML5 revision 938 (scoped="").
1755    
1756     2007-06-24 Wakaba <wakaba@suika.fam.cx>
1757    
1758 wakaba 1.47 * HTML.pm.src: HTML5 revision 923 (matching end tag in CDATA
1759     or RCDATA in fragment parsing mode). HTML5 revision
1760     924 (<!--> and <!--->). HTML5 revision 926 (hn in hn).
1761    
1762     2007-06-23 Wakaba <wakaba@suika.fam.cx>
1763    
1764     * HTML.pm.src (get_inner_html): HTML5 revision 922 (inner_html
1765     for <pre> and <textarea>).
1766    
1767 wakaba 1.33 2007-06-23 Wakaba <wakaba@suika.fam.cx>
1768    
1769 wakaba 1.46 * HTML.pm.src: HTML5 revision 920 (<isindex>).
1770    
1771     2007-06-23 Wakaba <wakaba@suika.fam.cx>
1772    
1773 wakaba 1.45 * HTML.pm.src: HTML5 revision 918 (</head>, </body>, </html>).
1774    
1775     2007-06-23 Wakaba <wakaba@suika.fam.cx>
1776    
1777 wakaba 1.44 * HTML.pm.src: HTML5 revision 916 (</body>).
1778     HTML5 revision 917 (conforming bare &).
1779    
1780     2007-06-23 Wakaba <wakaba@suika.fam.cx>
1781    
1782 wakaba 1.43 * NanoDOM.pm (manakai_is_html): Setting to false did not work.
1783    
1784     * HTML.pm.src: HTML5 revision 914 (</ in CDATA, RCDATA).
1785     HTML5 revision 915 (<nobr>).
1786    
1787     2007-06-23 Wakaba <wakaba@suika.fam.cx>
1788    
1789 wakaba 1.42 * HTML.pm.src: HTML5 revisions 908, 909, 912, and 913 (quirks mode).
1790    
1791     * NanoDOM.pm (manakai_is_html, manakai_compat_mode, compat_mode):
1792     New attributes.
1793    
1794     2007-06-23 Wakaba <wakaba@suika.fam.cx>
1795    
1796 wakaba 1.41 * HTML.pm.src: HTML5 revisions 900, 901, 902, and 911 (<
1797     in tags).
1798    
1799     2007-06-23 Wakaba <wakaba@suika.fam.cx>
1800    
1801 wakaba 1.40 * .cvsignore: |Entities.html| is added.
1802    
1803     * HTML.pm.src: |$entity_char| is removed and
1804     requires |Whatpm::_NamedEntityList| instead.
1805     HTML5 revision 898 (refc), except that lack of refc
1806     is parse error.
1807    
1808     * mkentitylist.pl: New script.
1809    
1810     * Makefile (all): |_NamedEntityList.pm| is added.
1811     (_NamedEntityList.pm, Entities.html): New rules.
1812    
1813     2007-06-23 Wakaba <wakaba@suika.fam.cx>
1814    
1815 wakaba 1.39 * HTML.pm.src: Parse errors immediately after U+000D
1816     were ignored and U+000D immediately following another
1817     U+000D was not converted to U+000A.
1818    
1819     2007-06-23 Wakaba <wakaba@suika.fam.cx>
1820    
1821 wakaba 1.38 * HTML.pm.src (set_inner_html): HTML5 revision 892 (adopt
1822     nodes before appended). Parser was not ready for NULL
1823     parse error and escape flag.
1824    
1825     * NanoDOM.pm (adopt_node): New.
1826    
1827     2007-06-23 Wakaba <wakaba@suika.fam.cx>
1828    
1829 wakaba 1.37 * HTML.pm.src: HTML5 revision 886 (insane comment in
1830     CDATA and RCDATA). Note that current implementation
1831     is simply repeating what the spec says and it is maybe not
1832     a best way to do it.
1833    
1834     2007-06-23 Wakaba <wakaba@suika.fam.cx>
1835    
1836 wakaba 1.36 * HTML.pm.src: HTML5 revision 884 (</form> don't close
1837     the form element if a descendant element without implied end tag has
1838     still been open).
1839    
1840     2007-06-23 Wakaba <wakaba@suika.fam.cx>
1841    
1842 wakaba 1.35 * ContentChecker.pm: HTML5 revision 881 (Make |id| attribute with
1843     space characters non-conforming).
1844    
1845     2007-06-23 Wakaba <wakaba@suika.fam.cx>
1846    
1847 wakaba 1.34 * HTML.pm.src: An error message was incorrect.
1848     HTML5 revision 869 (C1 character references).
1849    
1850     2007-06-23 Wakaba <wakaba@suika.fam.cx>
1851    
1852 wakaba 1.33 * HTML.pm.src: HTML5 revision 867 (a LF at the beginning of
1853     a |textarea| is removed).
1854    
1855 wakaba 1.32 2007-06-05 Wakaba <wakaba@suika.fam.cx>
1856    
1857     * NanoDOM.pm (get_attribute_node_ns): New method.
1858    
1859     * ContentChecker.pm: |script| |async| and |defer|
1860     no longer require |src|. |async| MUST NOT be
1861     specified if |defer|. (HTML5 revision 858).
1862    
1863 wakaba 1.31 2007-05-30 Wakaba <wakaba@suika.fam.cx>
1864    
1865     * HTML.pm.src: |<form><form>| went to inifinite loop.
1866    
1867 wakaba 1.27 2007-05-27 Wakaba <wakaba@suika.fam.cx>
1868    
1869 wakaba 1.30 * ContentChecker.pm (html): Set |is_root| (allowed
1870     as a document element) flag on.
1871     (new): Removed.
1872     (check_document): New method.
1873    
1874     2007-05-27 Wakaba <wakaba@suika.fam.cx>
1875    
1876 wakaba 1.29 * ContentChecker.pm (thead, tfoot): Checker specifications
1877     were incorrect.
1878    
1879     2007-05-27 Wakaba <wakaba@suika.fam.cx>
1880    
1881 wakaba 1.28 * ContentChecker.pm ($HTMLURIAttrChecker): Include
1882     error position in the |type| option of the error.
1883    
1884     * HTMLTable.pm (form_table): The |$onerror| parameter
1885     is now optional. Some bugs are fixed.
1886    
1887     2007-05-27 Wakaba <wakaba@suika.fam.cx>
1888    
1889 wakaba 1.27 * HTMLTable.pm: New module.
1890    
1891     * ContentChecker.pm (table): Invoke table model error checker.
1892    
1893     * NanoDOM.pm (first_child, get_attribute_ns): New.
1894    
1895 wakaba 1.25 2007-05-26 Wakaba <wakaba@suika.fam.cx>
1896    
1897 wakaba 1.26 * ContentChecker.pm ($HTMLLinkTypesAttrChecker): New checker.
1898     (link/@rel, a/@rel, area/@rel): Use new checker.
1899    
1900     * Makefile (_LinkTypeList.pm, RelExtensions.html): New rules.
1901    
1902     * _LinkTypeList.pm: New file.
1903    
1904     * mklinktypelist.pl: New file.
1905    
1906     * .cvsignore: |RelExtensions.html| added.
1907    
1908     * NanoDOM.pm (child_nodes): Returns an empty array
1909     for non-child-containing node types.
1910     (text_content): New attribute.
1911    
1912     2007-05-26 Wakaba <wakaba@suika.fam.cx>
1913    
1914 wakaba 1.25 * IMTChecker.pm: New module.
1915    
1916     * ContentChecker.pm ($HTMLIMTAttrChecker): Call IMTChecker
1917     to test parameter value validity.
1918    
1919     * HTML.pm.src ($style_start_tag): Attributes were
1920     discarded.
1921    
1922 wakaba 1.22 2007-05-25 Wakaba <wakaba@suika.fam.cx>
1923    
1924 wakaba 1.24 * ContentChecker.pm ($HTMLURIAttrChecker): Implemented.
1925    
1926     2007-05-25 Wakaba <wakaba@suika.fam.cx>
1927    
1928 wakaba 1.23 * URIChecker.pm: All recommendations from RFC 3986
1929     and RFC 3987 are listed (not all testable items are checked yet).
1930    
1931     2007-05-25 Wakaba <wakaba@suika.fam.cx>
1932    
1933 wakaba 1.22 * URIChecker.pm: New module.
1934    
1935 wakaba 1.18 2007-05-20 Wakaba <wakaba@suika.fam.cx>
1936    
1937 wakaba 1.21 * ContentChecker.pm: Now most attributes are implemented
1938     or associated to some placeholder.
1939     ($ElementDefault): Warn unknown attributes
1940     for unknown elements as "attribute not supported".
1941     ($HTMLLanguageTagAttrChecker, $HTMLMQAttrChecker): New placeholders.
1942     ($HTMLUsemapAttrChecker, $HTMLTargetAttrChecker): New checkers.
1943     (|a| attribute checker): Reimplemented.
1944    
1945     2007-05-20 Wakaba <wakaba@suika.fam.cx>
1946    
1947 wakaba 1.20 * ContentChecker.pm ($HTMLEventHandlerAttrChecker): New placeholder.
1948     ($HTMLAttrChecker): Event handler content attributes
1949     are added.
1950     (link, embed): Required attribute is now checked.
1951     (embed): Unknown local attributes are no longer warned.
1952    
1953     2007-05-20 Wakaba <wakaba@suika.fam.cx>
1954    
1955 wakaba 1.19 * ContentChecker.pm ($HTMLSpaceURIsAttrChecker): New placeholder.
1956     ($HTMLIMTAttrChecker): New checker.
1957     (link@rel, link@href, link@type, style@type,
1958     a@href, a@ping, a@ping, a@type, embed@src, embed@type,
1959     object@data, object@type, source@src, source@type, area@alt,
1960     area@shape, area@coords, area@href,
1961     area@ping, area@rel, area@type, script@src,
1962     script@defer, script@async, script@type): Checkers added.
1963    
1964     2007-05-20 Wakaba <wakaba@suika.fam.cx>
1965    
1966 wakaba 1.18 * ContentChecker.pm: Descendant checking was incorrect.
1967    
1968 wakaba 1.12 2007-05-19 Wakaba <wakaba@suika.fam.cx>
1969    
1970 wakaba 1.17 * ContentChecker.pm: Support |xml:*| and |xmlns:*|
1971     attributes. Report an error if |Element.prefix|
1972     is |xmlns|.
1973    
1974     * NanoDOM.pm (prefix): New attribute.
1975    
1976     2007-05-19 Wakaba <wakaba@suika.fam.cx>
1977    
1978 wakaba 1.16 * HTML.pm.src: In |main| phase, |in body| insertion
1979     mode, action for |<iframe>| was missing.
1980    
1981     2007-05-19 Wakaba <wakaba@suika.fam.cx>
1982    
1983 wakaba 1.15 * ContentChecker.pm: Support for many of HTML5 elements.
1984     ($GetHTMLNonNegativeIntegerAttrChecker): New.
1985    
1986     2007-05-19 Wakaba <wakaba@suika.fam.cx>
1987    
1988 wakaba 1.14 * ContentChecker.pm: Support for most elements up to |progress|.
1989     ($HTMLURIAttrChecker): Placeholder.
1990     ($HTMLIntegerAttrChecker, $GetHTMLFloatingPointNumberAttrChecker):
1991     New.
1992    
1993     2007-05-19 Wakaba <wakaba@suika.fam.cx>
1994    
1995 wakaba 1.13 * ContentChecker.pm: Attribute checkers
1996     for global attributes, |html|, |base|, |style|, and |meta|.
1997    
1998     * NanoDOM.pm (insert_before): Weaken reference
1999     to the parent node.
2000     (Attr::new): Set |owner_element| attribute.
2001     (namespace_uri, manakai_local_name): New attribute implementations.
2002     (owner_element): New attribute.
2003    
2004     2007-05-19 Wakaba <wakaba@suika.fam.cx>
2005    
2006 wakaba 1.12 * ContentChecker.pm ($AttrChecker, $HTMLAttrChecker,
2007     $AnyChecker->{attr_checker}, $HTMLAttrsChecker,
2008     $Element->{$HTML_NS}->{''}): New.
2009     (check_element): Invoke attrs_checker for each element.
2010    
2011 wakaba 1.6 2007-05-13 Wakaba <wakaba@suika.fam.cx>
2012    
2013 wakaba 1.11 * ContentChecker.pm: Don't use |manakai_element_type_match|.
2014    
2015     2007-05-13 Wakaba <wakaba@suika.fam.cx>
2016    
2017 wakaba 1.10 * ContentChecker.pm: Use hashs rather than lists for
2018     element type testings.
2019    
2020     2007-05-13 Wakaba <wakaba@suika.fam.cx>
2021    
2022 wakaba 1.9 * ContentChecker.pm: Don't generate duplicate
2023     error when an element type is put in the "minus" list
2024     and the element type is not allowed explicitly in the particular
2025     element content model.
2026     (html:a checker): New checker.
2027     (html:details, html:datagrid): New checkers.
2028     (html:legend): New checker.
2029    
2030     2007-05-13 Wakaba <wakaba@suika.fam.cx>
2031    
2032 wakaba 1.8 * ContentChecker.pm (html:li checker): Implemented.
2033    
2034     2007-05-13 Wakaba <wakaba@suika.fam.cx>
2035    
2036 wakaba 1.7 * ContentChecker.pm ($HTMLInlineOrStriclyInlineChecker): New
2037     checker.
2038     (html:dd checker): New checker.
2039     (html:q, html:em, html:strong, html:small,
2040     html:m, html:dfn, html:code, html:samp, html:span): New checkers.
2041    
2042     2007-05-13 Wakaba <wakaba@suika.fam.cx>
2043    
2044 wakaba 1.6 * ContentChecker.pm ($AnyChecker): Renamed
2045     from |$ElementDefault->{checker}|.
2046     ($ElementDefault->{checker}): Throw an error that
2047     the element type is not supported by the checker.
2048     ($HTMLMetadataElement): |html:base| was missing.
2049     ($HTMLEmptyChecker): Don't throw an error
2050     for inter-element whitespace nodes.
2051     (html:html checker): Errors were not
2052     thrown even if |html:head| and/or |html:body|
2053     children were missing.
2054     (html:head checker): An error was not
2055     thrown if <meta charset> appered after other
2056     elements.
2057    
2058 wakaba 1.5 2007-05-05 Wakaba <wakaba@suika.fam.cx>
2059    
2060     * ContentChecker.pm: |footer|, |video|, |audio|, |script|,
2061     and |noscript| elements are implemented.
2062     (new): New method.
2063    
2064 wakaba 1.3 2007-05-04 Wakaba <wakaba@suika.fam.cx>
2065    
2066 wakaba 1.4 * ContentChecker.pm: New module.
2067    
2068     2007-05-04 Wakaba <wakaba@suika.fam.cx>
2069    
2070 wakaba 1.3 * NanoDOM.pm (manakai_parent_element,
2071     document_element, manakai_local_name,
2072     manakai_element_type_match): New method.
2073    
2074     2007-05-03 Wakaba <wakaba@suika.fam.cx>
2075    
2076     * HTML.pm.src: Replace decimal and hexadecimal numeric
2077     entities in C1 range using Windows-1252 mapping. Bare LF
2078     did not count as new line for error reporting.
2079    
2080 wakaba 1.2 2007-05-02 Wakaba <wakaba@suika.fam.cx>
2081    
2082     * NanoDOM.pm (DOMImplementation): New class.
2083     (append_child): Weaken the |parent_node| reference.
2084     (create_element_ns, Element new): Set the |owner_document|
2085     reference.
2086     (implementation): New attribute.
2087     (owner_document, local_name, namespace_uri): New attributes.
2088    
2089     * HTML.pm.src (parse_string): Line and column numbers
2090     are now provided to error handler.
2091     (!!!parse-error): Short descriptions are added.
2092     (_construct_tree): Split into three methods; support
2093     for innerHTML mode.
2094     (set_inner_html): New method.
2095    
2096 wakaba 1.1 2007-05-01 Wakaba <wakaba@suika.fam.cx>
2097    
2098     * NanoDOM.html: Documentation is added.
2099    
2100     * HTML.pod, ContentType.html: Documentation is revised.
2101    
2102     * .cvsignore: Pod2html temporary files are added.
2103    
2104     * Makefile: Make |NanoDOM.html|.
2105    
2106     2007-05-01 Wakaba <wakaba@suika.fam.cx>
2107    
2108     * HTML.pm.src (parse_string): New method.
2109     (get_inner_html): Renamed from |inner_html|.
2110    
2111     * Makefile: A rule for |HTML.html| is added.
2112    
2113     * HTML.pod: New documentation.
2114    
2115     2007-05-01 Wakaba <wakaba@suika.fam.cx>
2116    
2117     * NanoDOM.pm (last_child, previous_sibling): New attributes.
2118     (clone_node): Attribute nodes were not completely copied.
2119    
2120     * HTML.pm.src: Many bugs are fixed.
2121    
2122     2007-04-30 Wakaba <wakaba@suika.fam.cx>
2123    
2124     * HTML.pm.src: Some typos are fixed.
2125    
2126     2007-04-30 Wakaba <wakaba@suika.fam.cx>
2127    
2128     * mkhtmlparser.pl, Makefile: References to the |HTML-consume-entity.src|
2129     are removed.
2130    
2131     * HTML.pm.src: Tokenizer's handling on named entities are rewritten.
2132    
2133     * HTML-consume-entity.src: Removed.
2134    
2135     2007-04-30 Wakaba <wakaba@suika.fam.cx>
2136    
2137     * HTML.pm.src: Tokenizer's handling on hexadecimal
2138     numeric entities are rewritten.
2139    
2140     2007-04-30 Wakaba <wakaba@suika.fam.cx>
2141    
2142     * HTML.pm.src: Some tokenizer bugs are fixed.
2143    
2144     2007-04-30 Wakaba <wakaba@suika.fam.cx>
2145    
2146     * HTML.pm.src: The tree construction stage is implemented.
2147    
2148     * mkhtmlparser.pl: New macros are added.
2149    
2150     2007-04-28 Wakaba <wakaba@suika.fam.cx>
2151    
2152     * ContentType.pm: A note on bug in the specification
2153     is removed since it's been now fixed.
2154    
2155     * .cvsignore: New file.
2156    
2157     2007-04-28 Wakaba <wakaba@suika.fam.cx>
2158    
2159     * HTML.pm.src, HTML-consume-entity.src: New files.
2160    
2161     * Makefile (HTML.pm): New rule.
2162    
2163     * mkhtmlparser.pl: New script.
2164    
2165     2007-04-25 Wakaba <wakaba@suika.fam.cx>
2166    
2167     * Makefile: New file.
2168    
2169     2007-04-24 Wakaba <wakaba@suika.fam.cx>
2170    
2171     * ContentType.pm: An error in pod is fixed.
2172    
2173     2007-04-24 Wakaba <wakaba@suika.fam.cx>
2174    
2175     * ContentType.pm: Documentation is added.
2176    
2177     2007-04-24 Wakaba <wakaba@suika.fam.cx>
2178    
2179     * ContentType.pm: New Perl module.
2180    
2181     * ChangeLog: New file.
2182    
2183    

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24