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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.334 - (show annotations) (download)
Mon Sep 22 06:04:28 2008 UTC (17 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.333: +6 -0 lines
++ whatpm/t/ChangeLog	22 Sep 2008 05:59:48 -0000
	* tokenizer-test-1.test: Test data on invalid character references
	are added (cf. HTML5 revision 2138).

	* tokenizer-test-2.dat: Test data on U+000B are updated (HTML5
	revision 2138).

2008-09-22  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/ChangeLog	22 Sep 2008 06:02:01 -0000
2008-09-22  Wakaba  <wakaba@suika.fam.cx>

	* HTML.pm.src: Character references for non-space C0 characters,
	including U+000B VT, DEL character, noncharacter code points, are
	now converted to the U+FFFD character (cf. HTML5 revision 2138).

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24