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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.392 - (hide annotations) (download)
Sun Sep 6 01:30:08 2009 UTC (15 years, 2 months ago) by wakaba
Branch: MAIN
Changes since 1.391: +5 -0 lines
++ whatpm/t/ChangeLog	6 Sep 2009 01:29:37 -0000
	* tree-test-void.dat: Updated test results related to the
	|eventsource| tag (HTML5 revision 2870).

2009-09-06  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/ChangeLog	6 Sep 2009 01:27:07 -0000
	* HTML.pm.src: Dropped the |eventsource| element (HTML5 revision
	2870).

2009-09-06  Wakaba  <wakaba@suika.fam.cx>

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24