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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.361 - (hide annotations) (download)
Mon Oct 20 04:21:18 2008 UTC (16 years, 8 months ago) by wakaba
Branch: MAIN
Changes since 1.360: +5 -0 lines
++ whatpm/t/ChangeLog	20 Oct 2008 04:21:10 -0000
2008-10-20  Wakaba  <wakaba@suika.fam.cx>

	* XML-Parser.t: "xml/attrs-2.dat" added.

++ whatpm/t/xml/ChangeLog	20 Oct 2008 04:17:22 -0000
	* attrs-2.dat: New test data file.

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

++ whatpm/Whatpm/ChangeLog	20 Oct 2008 04:19:50 -0000
2008-10-20  Wakaba  <wakaba@suika.fam.cx>

	* NanoDOM.pm (specified, all_declarations_processed,
	manakai_attribute_type): New attributes.

++ whatpm/Whatpm/XML/ChangeLog	20 Oct 2008 04:20:35 -0000
2008-10-20  Wakaba  <wakaba@suika.fam.cx>

	* Parser.pm.src: Support for attribute type assignments, attribute
	value tokenization, and default value assignments.

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24