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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.315 - (show annotations) (download)
Tue Sep 16 04:20:52 2008 UTC (17 years, 7 months ago) by wakaba
Branch: MAIN
Changes since 1.314: +11 -0 lines
++ whatpm/t/webidl/ChangeLog	16 Sep 2008 04:20:29 -0000
2008-09-16  Wakaba  <wakaba@suika.fam.cx>

	* webidl-interface.dat, webidl-exception.dat: New test cases for
	extended attributes are added.

	* webidl-defs.dat: Test results updated.

++ whatpm/Whatpm/ChangeLog	16 Sep 2008 04:19:57 -0000
2008-09-16  Wakaba  <wakaba@suika.fam.cx>

	* WebIDL.pm: Unescapes extended attribute names and extended
	attribute identifiers.  Preserve whether an extended attribute has
	an argument list of not.  Support for extended attributes:
	Constructor, ExceptionConsts, IndexGetter, IndexSetter,
	NameGetter, NameSetter, and Null.
	(has_argument_list): New attribute.
	(idl_text): Stringifies argument lists, if any, even if it is
	empty.

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24