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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.317 - (show annotations) (download)
Tue Sep 16 13:07:54 2008 UTC (16 years, 1 month ago) by wakaba
Branch: MAIN
Changes since 1.316: +6 -0 lines
++ whatpm/t/webidl/ChangeLog	16 Sep 2008 13:07:37 -0000
	* webidl-defs.dat, webidl-interface.dat, webidl-exception.dat,
	webidl-valuetype.dat, webidl-typedef.dat: New test cases for
	parsing are added.  Some test results are updated for new error
	type names.

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

++ whatpm/Whatpm/ChangeLog	16 Sep 2008 13:06:31 -0000
	* WebIDL.pm: Parser's error types are redefined.  Some forward
	compatible parsing bugs are fixed.  Some unreachable codes are
	commented out.

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24