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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.353 - (show annotations) (download)
Tue Oct 14 09:00:57 2008 UTC (16 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.352: +5 -0 lines
++ whatpm/t/ChangeLog	14 Oct 2008 09:00:17 -0000
	* xml/: New directory.

	* Makefile: Tests for Whatpm::XML::Parser are added.

	* HTML-tree.t: Change the relative order of codes.

	* XML-Parser.t: New test script.

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

++ whatpm/t/xml/ChangeLog	14 Oct 2008 08:53:14 -0000
2008-10-14  Wakaba  <wakaba@suika.fam.cx>

	* tree-1.dat: New test data file.

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

	* ChangeLog: New file.

++ whatpm/Whatpm/ChangeLog	14 Oct 2008 08:58:16 -0000
	* NanoDOM.pm (dom_config): New attribute (do nothing), for
	Whatpm::XML::Parser support.

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

++ whatpm/Whatpm/XML/ChangeLog	14 Oct 2008 08:59:00 -0000
	* Parser.pm.src: Use array reference syntax for
	|create_element_ns|, for Whatpm::NanoDOM compability.  Typo fixed.

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

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24