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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.361 - (show annotations) (download)
Mon Oct 20 04:21:18 2008 UTC (16 years ago) by wakaba
Branch: MAIN
Changes since 1.360: +5 -0 lines
++ whatpm/t/ChangeLog	20 Oct 2008 04:21:10 -0000
2008-10-20  Wakaba  <wakaba@suika.fam.cx>

	* XML-Parser.t: "xml/attrs-2.dat" added.

++ whatpm/t/xml/ChangeLog	20 Oct 2008 04:17:22 -0000
	* attrs-2.dat: New test data file.

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

++ whatpm/Whatpm/ChangeLog	20 Oct 2008 04:19:50 -0000
2008-10-20  Wakaba  <wakaba@suika.fam.cx>

	* NanoDOM.pm (specified, all_declarations_processed,
	manakai_attribute_type): New attributes.

++ whatpm/Whatpm/XML/ChangeLog	20 Oct 2008 04:20:35 -0000
2008-10-20  Wakaba  <wakaba@suika.fam.cx>

	* Parser.pm.src: Support for attribute type assignments, attribute
	value tokenization, and default value assignments.

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24