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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.339 - (show annotations) (download)
Sat Oct 4 07:58:58 2008 UTC (16 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.338: +5 -0 lines
++ whatpm/Whatpm/ChangeLog	4 Oct 2008 07:58:26 -0000
	* HTML.pm.src: <li>, <dt>, and <dd> steps reimplemented (HTML5
	revisions 1731 and 1831).

2008-10-04  Wakaba  <wakaba@suika.fam.cx>

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24