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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.314 - (show annotations) (download)
Mon Sep 15 09:27:53 2008 UTC (16 years, 10 months ago) by wakaba
Branch: MAIN
Changes since 1.313: +5 -0 lines
++ whatpm/Whatpm/ChangeLog	15 Sep 2008 09:27:44 -0000
	* HTML.pm.src: New state |PCDATA_STATE|.  Use an empty string for
	|{s_kwd}| in DATA_STATE as default.

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24