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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.355 - (show annotations) (download)
Wed Oct 15 04:38:22 2008 UTC (16 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.354: +6 -0 lines
++ whatpm/t/ChangeLog	15 Oct 2008 04:37:36 -0000
	* XML-Parser.t: "xml/pis-1.dat" and "xml/xmldecls-1.dat" added.
	Test directifes "#xml-version", "#xml-encoding", and
	"#xml-standalone" are added.

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

++ whatpm/t/xml/ChangeLog	15 Oct 2008 04:37:54 -0000
	* pis-1.dat, xmldecls-1.dat: New test data files.

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

++ whatpm/Whatpm/ChangeLog	15 Oct 2008 04:33:34 -0000
2008-10-15  Wakaba  <wakaba@suika.fam.cx>

	* NanoDOM.pm (create_processing_instruction): New method.
	(xml_version, xml_encoding, xml_standalone): New attributes.
	(ProcessingInstruction): New class.

++ whatpm/Whatpm/HTML/ChangeLog	15 Oct 2008 04:34:03 -0000
	* Tokenizer.pm.src: Support for XML processing instructions.

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

++ whatpm/Whatpm/XML/ChangeLog	15 Oct 2008 04:34:57 -0000
	* Parser.pm.src: Support for XML declarations.

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24