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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.354 - (show annotations) (download)
Tue Oct 14 13:24:52 2008 UTC (17 years, 8 months ago) by wakaba
Branch: MAIN
Changes since 1.353: +6 -0 lines
++ whatpm/t/ChangeLog	14 Oct 2008 12:46:01 -0000
	* tree-test-foreign.dat: More test data are added.

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

++ whatpm/Whatpm/ChangeLog	14 Oct 2008 12:45:40 -0000
	* HTML.pm.src: Handling of end tags in the foreign content
	insertion mode was partially wrong, because of wrong bit
	operations.

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24