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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.340 - (show annotations) (download)
Sat Oct 4 08:29:18 2008 UTC (16 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.339: +4 -0 lines
++ whatpm/t/ChangeLog	4 Oct 2008 08:25:52 -0000
	* tree-test-flow.dat: Test on implied end tag before <p> start tag
	are added (HTML5 revision 1731).

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24