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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.381 - (hide annotations) (download)
Sun Aug 16 04:59:53 2009 UTC (15 years, 10 months ago) by wakaba
Branch: MAIN
Changes since 1.380: +5 -0 lines
++ whatpm/t/ChangeLog	16 Aug 2009 04:59:46 -0000
	* tree-test-foreign.dat: Added tests for <font> in SVG (cf. HTML5
	revision 2590).

2009-08-16  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/ChangeLog	16 Aug 2009 04:59:14 -0000
	* HTML.pm.src: <font> in SVG land is handled as an SVG element as
	long as it did not have HTML attributes (HTML5 revision 2590).

2009-08-16  Wakaba  <wakaba@suika.fam.cx>

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24