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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.327 - (show annotations) (download)
Sat Sep 20 09:28:29 2008 UTC (16 years, 1 month ago) by wakaba
Branch: MAIN
Changes since 1.326: +5 -0 lines
++ whatpm/t/ChangeLog	20 Sep 2008 09:28:04 -0000
	* tokenizer-test-1.test: Test data for U+000B are added (cf. HTML5
	revision 1738).

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

++ whatpm/Whatpm/ChangeLog	20 Sep 2008 09:27:21 -0000
	* HTML.pm.src: U+000B is no longer a space character (HTML5
	revision 1738).

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24