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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.330 - (show annotations) (download)
Sun Sep 21 05:08:15 2008 UTC (16 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.329: +5 -0 lines
++ whatpm/Whatpm/ChangeLog	21 Sep 2008 05:08:10 -0000
2008-09-21  Wakaba  <wakaba@suika.fam.cx>

	* HTML.pm.src (parse_byte_stream): Support (or non-support) for
	unsupported charset="" parameter value (HTML5 revision 2131).

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24