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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.320 - (show annotations) (download)
Thu Sep 18 02:39:16 2008 UTC (16 years, 1 month ago) by wakaba
Branch: MAIN
Changes since 1.319: +7 -0 lines
++ whatpm/Whatpm/ChangeLog	18 Sep 2008 02:39:06 -0000
2008-09-18  Wakaba  <wakaba@suika.fam.cx>

	* mklangreg.pl: New script.

	* Makefile: Updated for creation of the module for language subtag
	registry.

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24