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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.349 - (show annotations) (download)
Mon Oct 13 06:18:30 2008 UTC (16 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.348: +6 -0 lines
++ whatpm/t/ChangeLog	13 Oct 2008 06:18:26 -0000
2008-10-13  Wakaba  <wakaba@suika.fam.cx>

	* tokenizer-test-2.dat: A test result was wrong.

++ whatpm/Whatpm/ChangeLog	13 Oct 2008 06:17:59 -0000
2008-10-13  Wakaba  <wakaba@suika.fam.cx>

	* HTML.pm.src: Steps for CDATA/RCDATA elements in tree
	construction stage synced with the spec (HTML5 revisions 2139 and
	2302).

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24