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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.337 - (show annotations) (download)
Sat Oct 4 05:53:45 2008 UTC (16 years, 1 month ago) by wakaba
Branch: MAIN
Changes since 1.336: +6 -0 lines
++ whatpm/t/ChangeLog	4 Oct 2008 05:53:31 -0000
	* tree-test-void.dat: New test data (cf. HTML5 revision 1731).

	* HTML-tree.t: |tree-test-void.dat| added.

	* tree-test-1.dat: Test on <listing> as a "special" element are
	added.  Test on implied |option| and |optgroup| end tags are added
	(cf. HTML5 revision 1731).

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

++ whatpm/Whatpm/ChangeLog	4 Oct 2008 05:52:27 -0000
	* HTML.pm.src: Support for |command| and |eventsource| elements	(HTML5
	revision 1731).  End tags of |option| and |optgroup| elements are
	now optional (HTML5 revision 1731).

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24