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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.346 - (show annotations) (download)
Sat Oct 4 17:16:01 2008 UTC (16 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.345: +4 -0 lines
++ whatpm/t/ChangeLog	4 Oct 2008 17:15:55 -0000
2008-10-05  Wakaba  <wakaba@suika.fam.cx>

	* HTML-tree.t: New test files added.

	* Makefile: New test files added.

++ whatpm/Whatpm/ChangeLog	4 Oct 2008 17:15:20 -0000
2008-10-05  Wakaba  <wakaba@suika.fam.cx>

	* HTML.pm.src: An AAA bug fixed.

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24