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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.321 - (show annotations) (download)
Thu Sep 18 05:11:18 2008 UTC (16 years, 10 months ago) by wakaba
Branch: MAIN
Changes since 1.320: +4 -0 lines
++ whatpm/Whatpm/ChangeLog	18 Sep 2008 05:11:07 -0000
	* LangTag.pm (check_rfc4646_langtag): New method.

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24