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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.329 - (show annotations) (download)
Sat Sep 20 11:25:56 2008 UTC (16 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.328: +8 -0 lines
++ whatpm/t/ChangeLog	20 Sep 2008 11:22:21 -0000
	* content-model-1.dat, content-model-2.dat, content-model-4.dat:
	Test data for U+000B are added (cf. HTML5 revision 1738).

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

++ whatpm/Whatpm/ChangeLog	20 Sep 2008 11:21:11 -0000
	* HTML.pm.src: Reminding places where U+000B is allowed as a space
	character is fixed (cf. HTML5 revision 1738).

	* ContentChecker.pm, HTMLTable.pm: U+000B is no longer part of
	space characters (HTML5 revision 1738).

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

++ whatpm/Whatpm/ContentChecker/ChangeLog	20 Sep 2008 11:18:32 -0000
	* HTML.pm: U+000B is no longer part of space characters (HTML5
	revision 1738).

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24