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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.377 - (hide annotations) (download)
Sat Jul 25 04:05:42 2009 UTC (15 years, 11 months ago) by wakaba
Branch: MAIN
Changes since 1.376: +5 -0 lines
++ whatpm/t/dom-conformance/ChangeLog	25 Jul 2009 04:03:26 -0000
	* html-interactive-1.dat, html-scripting-1.dat,
	html-metadata-1.dat: The |eventsource| element and the |onmessage|
	attribute have been dropped (HTML5 revision 2870).

2009-07-25  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/ChangeLog	25 Jul 2009 03:55:06 -0000
	* HTML.pm.src: Marked where SVG |script| execution should be
	implemented (HTML5 revision 2904).

2009-07-25  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/ContentChecker/ChangeLog	25 Jul 2009 04:04:24 -0000
	* HTML.pm: The |eventsource| element and the |onmessage| attribute
	have been dropped (HTML5 revision 2870).

2009-07-25  Wakaba  <wakaba@suika.fam.cx>

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24