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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.368 - (hide annotations) (download)
Fri Dec 12 05:05:20 2008 UTC (16 years, 4 months ago) by wakaba
Branch: MAIN
Changes since 1.367: +4 -0 lines
++ whatpm/t/ChangeLog	12 Dec 2008 05:03:53 -0000
2008-12-12  Wakaba  <wakaba@suika.fam.cx>

	* ContentChecker.t: Added new test data file.

++ whatpm/t/dom-conformance/ChangeLog	12 Dec 2008 05:04:54 -0000
2008-12-12  Wakaba  <wakaba@suika.fam.cx>

	* html-form-input-1.dat, html-forms-1.dat: Added test data for
	@accept and @pattern.

	* html-form-textarea.dat: New test data file.

++ whatpm/Whatpm/ChangeLog	12 Dec 2008 05:00:26 -0000
2008-12-12  Wakaba  <wakaba@suika.fam.cx>

	* IMTChecker.pm: Added more definitions for subtypes.

++ whatpm/Whatpm/ContentChecker/ChangeLog	12 Dec 2008 05:03:26 -0000
2008-12-12  Wakaba  <wakaba@suika.fam.cx>

	* HTML.pm: Implemented <input accept> and <form accept>.  Raise a
	SHOULD-level error if @pattern but no @title.

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24