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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.341 - (show annotations) (download)
Sat Oct 4 08:58:02 2008 UTC (17 years, 4 months ago) by wakaba
Branch: MAIN
Changes since 1.340: +5 -0 lines
++ whatpm/t/ChangeLog	4 Oct 2008 08:56:31 -0000
	* tree-test-void.dat: Test on |param| and |source| start tags are
	added, as well as test on polytheistic slashes for new void
	elements (HTML5 revision 1731).

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

++ whatpm/Whatpm/ChangeLog	4 Oct 2008 08:57:05 -0000
	* HTML.pm.src: Support for new definition of |param| and |source|
	start tag parsing (HTML5 revision 1731).

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24