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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.348 - (show annotations) (download)
Tue Oct 7 11:41:41 2008 UTC (16 years, 1 month ago) by wakaba
Branch: MAIN
Changes since 1.347: +6 -0 lines
++ whatpm/t/ChangeLog	7 Oct 2008 11:39:59 -0000
2008-10-07  Wakaba  <wakaba@suika.fam.cx>

	* content-model-2.dat: Repetition model test is moved to another
	file.  A wrong test result fixed.  Broken test entries fixed.
	<area rev> is now reported as "unknown attribute", since RDFa spec
	adds that attribute to all elements with the Common attribute set.
	Note that we have no plan to support RDFa, at the moment.

++ whatpm/t/dom-conformance/ChangeLog	7 Oct 2008 11:41:37 -0000
	* html-flows-1.dat: <li value> test results updated.

	* html-forms-1.dat: accesskey="" attribute is obsolete.

	* html-metadata-1.dat: Fix broken test results.

	* html-repetitions.dat: The repetition template feature is
	obsolete.  A test entry from ../content-model-2.dat is added.

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

++ whatpm/Whatpm/ChangeLog	7 Oct 2008 11:36:17 -0000
2008-10-07  Wakaba  <wakaba@suika.fam.cx>

	* ContentChecker.pm: New error level "html5_fact" added, which
	should be tentatively used until all of requirements are properly
	specced as RFC 2119 "MUST" in HTML5.

++ whatpm/Whatpm/ContentChecker/ChangeLog	7 Oct 2008 11:37:15 -0000
	* HTML.pm: Quoted-strings in media type specifications were not
	properly decoded.  Fixed support for <li value> with non-<ol>
	parent (or with no parent).

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24