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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.357 - (show annotations) (download)
Sat Oct 18 08:05:29 2008 UTC (16 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.356: +6 -0 lines
++ whatpm/t/xml/ChangeLog	18 Oct 2008 08:05:22 -0000
2008-10-18  Wakaba  <wakaba@suika.fam.cx>

	* attlists-1.dat: Tests added.

++ whatpm/Whatpm/ChangeLog	18 Oct 2008 08:03:10 -0000
2008-10-18  Wakaba  <wakaba@suika.fam.cx>

	* NanoDOM.pm (text_content): Moved to Node from Element.  Setter
	implemented.
	(allowed_tokens, default_type, declared_type): Implemented.

++ whatpm/Whatpm/HTML/ChangeLog	18 Oct 2008 08:04:10 -0000
2008-10-18  Wakaba  <wakaba@suika.fam.cx>

	* Tokenizer.pm.src: <!ATTLIST> in the internal subset of an XML
	document, is now fully implemented.

	* Dumper.pm (dumptree): Output allowed tokens and default value
	always.

++ whatpm/Whatpm/XML/ChangeLog	18 Oct 2008 08:05:03 -0000
2008-10-18  Wakaba  <wakaba@suika.fam.cx>

	* Parser.pm.src (_tree_in_subset): <!ATTLIST> node construction
	implemented.

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24