/
commits.xml
2011 lines (1942 loc) · 86.4 KB
/
commits.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<?xml version="1.0" encoding="UTF-8"?>
<Commits>
<Commit category="core">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/06/06</DateCommitted>
<Modified> xml-xalan/java build.xml xml-xalan/java/src/org/apache/xalan Version.java Version.src</Modified>
<Log>
Generate values for Version information from constants in the build script.
(Adapted from xml-commons build script for the resolver.)
New file Version.src (in org.apache.xalan) is copied into Version.java
with version constants from build script plugged in.
Deprecated XSLProcessorVersion class can be removed.
</Log>
</Commit>
<Commit category="core">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/06/06</DateCommitted>
<Modified> xml-xalan/java build.xml</Modified>
<Log>
Generate values for Version information from constants in the build script.
(Adapted from xml-commons build script for the resolver.)
New file Version.src (in org.apache.xalan) is copied into Version.java
with version constants from build script plugged in.
Deprecated XSLProcessorVersion class can be removed.
Also, updated build clean target to delete Version.java, so it will
be regenerated in the next build.
</Log>
</Commit>
<Commit category="core">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/06/07</DateCommitted>
<Modified> xml-xalan/java/xdocs/sources/xalan faq.xml overview.xml whatsnew.xml xsltc_usage.xml</Modified>
<Log>
Documentation patch to correct typos, contributed by Glen Mazza
(glenmazza@yahoo.com).
</Log>
</Commit>
<Commit category="core">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/06/07</DateCommitted>
<Modified> xml-xalan/java/xdocs/sources/xalan faq.xml getstarted.xml history.xml index.xml samples.xml trax.xml usagepatterns.xml</Modified>
<Log>
Documentation update: Replaced all occurrences of TRaX with the properly
capitalized TrAX.
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/06/09</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer CharInfo.java</Modified>
<Log>
Speed up CharInfo.isSpecial() by replacing its internal use of
java.util.BitSet with a more tuned bitset.
Also sped up the common case of this method for ASCII values (0-126) by
saving booleans in a cached array rather than looking them up via their
bits in the bitset.
Submitted by: Brian Minchau
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/06/09</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer ToStream.java</Modified>
<Log>
Speed up ToStream.characters(char[] , int, int) method by
caching commonly calculated boolean expression for characters in the range (0-126)
in an array in CharInfo.
Also move a whitespace check out of the loop that processes characters and into
a separate loop. Most of the time this whitspace checking loop will end early and
speed up the other loop which no longer checks for whitespace with every character.
Submitted by: Brian Minchau
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/06/09</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer WriterToUTF8Buffered.java</Modified>
<Log>
Performance improvement of WriterToUTF8Buffered.characters(char[],int,int);
1. Reduced the number of checks for buffer overflow from 2 to 1
most of the time by nesting the checks.
2. Used local variables for the array reference and count of characters stored in
the buffer to make the loop faster.
3. Added an additional tight loop for better optimization.
Submitted by: Brian Minchau
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/06/09</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java ToStream.java ToTextStream.java</Modified>
<Log>
Changing firePseudoAttributes() to firePseudoElement() which
is for debugger tooling. Now both the whole start of the element-tag
e.g. <abc attr1="val1" attr2="val2"
will appear as output that might be written out, rather than
just the attributes.
Submitted by: Gordon Chiu
Reviewed by: Brian Minchau
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/06/09</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer ToTextStream.java</Modified>
<Log>
Change to use a local variable to hold the reference to m_writer (minor change for performance).
Submitted by: Brian Minchau
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/06/09</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java ToStream.java ToXMLStream.java</Modified>
<Log>
Changed references to m_writer to a local writer variable in
a number of places (a minor performance improvement).
Submitted by: Brian Minchau
</Log>
</Commit>
<Commit category="xsltc">
<Who>grchiu@apache.org</Who>
<DateCommitted>2003/06/11</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Expression.java</Modified>
<Log>
Fix for bugzilla 20685. In startResetIterator(), check see if the
expression wrapped by the CastExpr is a VariableRef. If so, don't
generate a call to setStartNode.
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/06/12</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer ToStream.java</Modified>
<Log>
Made ToStream.characters(char[], int, int) not bail out early if
the length was 0 characters, but do all processing. This forces
the close of any open start tag.
Submitted by: Brian Minchau
</Log>
</Commit>
<Commit category="core">
<Who>zongaro@apache.org</Who>
<DateCommitted>2003/06/16</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM2.java</Modified>
<Log>
Patch from Igor Hersht for Bug 19770. getFirstAttributeIdentity should check
that argument is not equal to DTM.NULL prior to calling _type2 method - that
method assumes that the argument is not NULL. Added comments to that effect to
_type2, _parent2, _firstch2, _nextsib2 and _exptype2.
</Log>
</Commit>
<Commit category="core">
<Who>grchiu@apache.org</Who>
<DateCommitted>2003/06/16</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/dtm/ref DTMAxisIteratorBase.java</Modified>
<Log>
Fix for the general case of bugzilla 20685:
DTMAxisIteratorBase#cloneIterator() was not setting clones to be
non-restartable.
</Log>
</Commit>
<Commit category="xsltc">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/06/16</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/dom MultiDOM.java</Modified>
<Log>
Fix a minor bug in MultiDOM.addDOMAdapter().
</Log>
</Commit>
<Commit category="xsltc">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/06/17</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc DOMCache.java xml-xalan/java/src/org/apache/xalan/xsltc/dom
DocumentCache.java LoadDocument.java xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java</Modified>
<Log>
Patch for bugzilla #15828.
Arguments to URIResolver.resolve method for document function, in XSLTC are now
href: argument passed to document function
base: URI of stylesheet
</Log>
</Commit>
<Commit category="xsltc">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/06/17</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/dom LoadDocument.java</Modified>
<Log>
Putting back LoadDocument.java
</Log>
</Commit>
<Commit category="xsltc">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/06/17</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/dom LoadDocument.java</Modified>
<Log>
Patch for bugzilla #15828.
Arguments to URIResolver.resolve method for document function, in XSLTC are now
href: argument passed to document function
base: URI of stylesheet
</Log>
</Commit>
<Commit category="xsltc">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/06/17</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java</Modified>
<Log>
Putting back TransformerImpl
</Log>
</Commit>
<Commit category="xsltc">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/06/17</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java</Modified>
<Log>
Patch for bugzilla #15828.
Arguments to URIResolver.resolve method for document function, in XSLTC are now
href: argument passed to document function
base: URI of stylesheet
</Log>
</Commit>
<Commit category="core">
<Who>grchiu@apache.org</Who>
<DateCommitted>2003/06/17</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/res XSLTErrorResources.java</Modified>
<Log>
Patch contributed by Glen Mazza (glenmazza@yahoo.com):
Fixing a typo in the command line help.
</Log>
</Commit>
<Commit category="core">
<Who>grchiu@apache.org</Who>
<DateCommitted>2003/06/17</DateCommitted>
<Modified> xml-xalan/java/xdocs/sources/xalan commandline.xml samples.xml trax.xml usagepatterns.xml</Modified>
<Log>
Patch contributed by Glen Mazza (glenmazza@yahoo.com) for bugzilla 20625:
Fixing some documentation typos.
</Log>
</Commit>
<Commit category="core">
<Who>grchiu@apache.org</Who>
<DateCommitted>2003/06/18</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java ToStream.java ToTextStream.java ToUnknownStream.java</Modified>
<Log>
Patch from myself and Brian Minchau (minchau@ca.ibm.com):
Added serializer trace mechanisms to flush trace pseudo characters for
start tag before attributes are added. Fixed serializer trace to generate
correct pseudo characters for html attributes.
</Log>
</Commit>
<Commit category="core">
<Who>johng@apache.org</Who>
<DateCommitted>2003/06/19</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/lib/sql XConnection.java</Modified>
<Log>
A little code clean up, introduce the SQLQueryParser to handle variables
better.
Added code by Art Welsh to hande the Set/get Feature routine
</Log>
</Commit>
<Commit category="core">
<Who>johng@apache.org</Who>
<DateCommitted>2003/06/19</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/lib/sql SQLQueryParser.java</Modified>
<Log>
Added code by Art Welsh to hande the inline variable parser.
SQL Statements can describe an XSL variable name along with
its type inside the statement instead of using the addParameter methods.
</Log>
</Commit>
<Commit category="core">
<Who>johng@apache.org</Who>
<DateCommitted>2003/06/19</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/lib/sql SQLErrorDocument.java</Modified>
<Log>
Added code by Art Welsh to hande full errors, where multiple warning
stattments wll be output into the error document
</Log>
</Commit>
<Commit category="core">
<Who>johng@apache.org</Who>
<DateCommitted>2003/06/19</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/lib/sql SQLDocument.java</Modified>
<Log>
Added code by Art Welsh to hande multiple result sets and Callable statements.
</Log>
</Commit>
<Commit category="core">
<Who>johng@apache.org</Who>
<DateCommitted>2003/06/19</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/lib/sql QueryParameter.java</Modified>
<Log>
Added code by Art Welsh to handle more of the SQL Types, and other attributes
about the parameter. such as IsOutput and the Name for XSL Variable reference
</Log>
</Commit>
<Commit category="xsltc">
<Who>zongaro@apache.org</Who>
<DateCommitted>2003/06/19</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerFactoryImpl.java</Modified>
<Log>
Added SAXTransformerFactory.FEATURE and SAXTransformerFactory.FEATURE_XMLFILTER
to the list of features that are implemented. Fix for bug 20795.
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/06/23</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java ToSAXHandler.java ToTextStream.java
ElemContext.java SerializerBase.java ToHTMLSAXHandler.java ToStream.java ToXMLSAXHandler.java ToXMLStream.java</Modified>
<Log>
Moved a number of serializer instance variables into ElemContext,
which is a stack to push/pop such values in unison. This makes
the code clearer and less error prone and probably marginally
(0.001%) faster.
Submitted by: Brian Minchau
</Log>
</Commit>
<Commit category="core">
<Who>grchiu@apache.org</Who>
<DateCommitted>2003/06/23</DateCommitted>
<Modified> xml-xalan/java build.xml</Modified>
<Log>
Fixing a build issue for JDKs that include XSLTC (specifically, the
JavaCupRedirect class) but not java_cup.jar. Need to put java_cup.jar
and runtime.jar on the bootclasspath.
</Log>
</Commit>
<Commit category="core">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/06/23</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/dom SAXImpl.java SimpleResultTreeImpl.java XSLTCDTMManager.java
xml-xalan/java/src/org/apache/xalan/xsltc/trax XSLTCSource.java xml-xalan/java/src/org/apache/xml/dtm DTM.java
xml-xalan/java/src/org/apache/xml/dtm/ref DTMDefaultBase.java DTMDefaultBaseIterators.java DTMDefaultBaseTraversers.java
DTMDocumentImpl.java xml-xalan/java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java SAX2DTM2.java</Modified>
<Log>
Implement a "DTM migration" feature, which allows a DTM that is built with
an old DTMManager to be migrated to a new DTMManager. This is to support
DTM sharing between multiple transformations.
</Log>
</Commit>
<Commit category="xsltc">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/06/23</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc DOM.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler SyntaxTreeNode.java
xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMAdapter.java MultiDOM.java SAXImpl.java SimpleResultTreeImpl.java</Modified>
<Log>
Performance improvement for XSLTC
Don't add a simple or adaptive RTF to the DTMManager if the nodeset
extension is not used. The DOMAdapters are also not created in
this case. This is a noticeable improvement for stylesheets that use
many small RTFs but do not use the nodeset extension.
</Log>
</Commit>
<Commit category="xsltc">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/06/23</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/compiler CallTemplate.java Mode.java Param.java Template.java WithParam.java
xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util NamedMethodGenerator.java</Modified>
<Log>
Performance improvement for XSLTC
New codegen solution for parameter passing in named templates,
which provides significant improvement for stylesheets that use
xsl:call-template and xsl:with-param heavily.
The old solution generates code to call Translet.addParameter(),
which seems to be too expensive. In the new solution, parameters
are passed to named templates via method arguments. The method
signature for a named template is not fixed. It depends on the number
of parameters declared in the template.
The caller (xsl:call-template) is responsible for generating the
correct parameter list and passes it to the called template. This is
done in the CallTemplate class, which finds out the corresponding
called template and processes its own xsl:with-param children together
with the xsl:params in the called template to generate an effective
parameter list. In the case where a xsl:param references another xsl:param,
local variables are generated to hold the temporary parameter value.
</Log>
</Commit>
<Commit category="xsltc">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/06/23</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/dom LoadDocument.java</Modified>
<Log>
Patch for bugzilla #15828.
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/06/23</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer CharInfo.java EmptySerializer.java ExtendedContentHandler.java
ToHTMLStream.java ToSAXHandler.java ToTextStream.java ToUnknownStream.java ToXMLStream.java</Modified>
<Log>
Added addUniqueAttribute() method for optimization purposes.
The serializer may write out this attribute straight away with little processing becuase the caller guarantees
that the value has these qualities:
1) Value is unique, i.e. will not be changed by other addAttribute() calls.
2) Value is ASCII
3) Value does not contain quot (34) amp (38) lt (60) gt (62)
Submitted by: Brian Minchau
Reviewed by: Morris Kwan
</Log>
</Commit>
<Commit category="xsltc">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/06/24</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/trax TrAXFilter.java</Modified>
<Log>
Add a "public Transformer getTransformer()" method to XSLTC's TrAXFilter class.
The Xalan TrAXFilter class already has such an interface.
</Log>
</Commit>
<Commit category="xsltc">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/06/24</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java XSLTCSource.java</Modified>
<Log>
Fix for XSLTCSource (see bugzilla 21048).
</Log>
</Commit>
<Commit category="xsltc">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/06/24</DateCommitted>
<Modified> xml-xalan/java/xdocs/sources/xsltc xsltc_trax_api.xml</Modified>
<Log>
Update documentation about how to use XSLTCSource.
</Log>
</Commit>
<Commit category="core">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/06/25</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/compiler LiteralAttribute.java LiteralElement.java Output.java
Stylesheet.java Text.java XslAttribute.java xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util MethodGenerator.java
xml-xalan/java/src/org/apache/xml/serializer ElemDesc.java</Modified>
<Log>
Performance improvement for XSLTC
Implement a compiler-assisted serialization feature.
Generate code to make use of the new
addUniqAttribute(String name, String value, int flags)
interface in SerializationHandler. The compiler does
more static analysis on attributes of literal elements
and passes the additional information to the serializer
via a bit-encoded flag.
The additional information includes whether this attribute
is unique, whether its value has bad characters (something
needs to be escaped), whether it is a HTML URI or empty
attribute. If the attribute is unique, the serializer can
write out the attribute right away, without having to
accumulate it in an internal table. If it also does not
contain bad characters, then escaping is not needed.
All these information speeds up the serializer on writing
the attributes out.
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/06/25</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer ToHTMLSAXHandler.java ToHTMLStream.java ToSAXHandler.java
ToTextStream.java ToUnknownStream.java ToXMLSAXHandler.java ToXMLStream.java SerializerBase.java ToStream.java
ToTextSAXHandler.java</Modified>
<Log>
Changed code like this:
String s; ...
char[] array = s.toCharArray();
To this:
final int length = s.length();
if (length > m_charsBuff.length)
{
m_charsBuff = new char[length * 2 + 1];
}
char[] array = m_charsBuff;
// re-use "array" but use "length" for the
// number of characters in the array.
This shows a 2% performance improvement for some
XSLTC/HTML testcases. Of course some transformations
may do betterthan this, and some worse, but all should be
faster.
The performance should also get marginally better for transformations that spend their
time writing out attributes. It runs marginally faster because
the helper character buffer, m_charsBuffer is re-used rather
than a new one being created each time.
Submitted by: Brian Minchau
</Log>
</Commit>
<Commit category="xsltc">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/06/25</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Constants.java VariableBase.java
xml-xalan/java/src/org/apache/xalan/xsltc/dom CachedNodeListIterator.java ClonedNodeListIterator.java</Modified>
<Log>
Performance improvement for XSLTC
Introduce two new iterators (CachedNodeListIterator and CloneNodeListIterator).
They are used by variable/param references that are evaluated to nodesets.
CachedNodeListIterator traverses the underlying iterator once and caches the
nodes in an IntegerArray. Its clone() method returns an object of
CloneNodeListIterator, which also retrieves nodes from the cache.
This mostly improves the case where a variable is referenced multiple times
in a context. In the old code, the iterator for the variable is traversed
as many times as the variable is referenced. Using the cached iterators,
the iterator is only traversed once. All later references retrieve nodes
from the cache.
</Log>
</Commit>
<Commit category="core">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/06/25</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/dtm/ref ExpandedNameTable.java</Modified>
<Log>
Fix for problem in ExpandedNameTable (bugzilla 21087).
</Log>
</Commit>
<Commit category="core">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/06/25</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/lib ExsltStrings.java</Modified>
<Log>
Fix problem in EXSLT align function (bugzilla 19890).
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/06/25</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/utils Trie.java</Modified>
<Log>
Sped up the Trie.get(String) method by about a factor of 2.
This was done by:
1) Not using string.charAt(i) when looping through the characters,
but rather using string.getChars(0, len, array, 0) and looping over the array.
2) Special casing the lookup in get(String key) for 0,1,2 or more characters
3) Putting the objects into the Trie considering the key as case insensitive at the
time of putting the objects in, rather than at the time of taking them out.
4) Not using a try/catch in the search loop to test if an
index is out of bounds, but testing if the character value is less than 128.
Thanks to Gordon Chiu for optimization 1) and Henry Zongaro for 3) and 4).
Submitted by: Brian Minchau
</Log>
</Commit>
<Commit category="xsltc">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/06/25</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/dom LoadDocument.java MultiDOM.java
xml-xalan/java/src/org/apache/xalan/xsltc/runtime AbstractTranslet.java xml-xalan/java/src/org/apache/xalan/xsltc/trax
TemplatesImpl.java</Modified>
<Log>
Implement a feature to cache the DTM for the stylesheet in
the Templates object. This improves the case where document('')
is used. In this case the DTM for the stylesheet is only built
once per thread. It can be reused by multiple transformers
created by the sample Templates.
</Log>
</Commit>
<Commit category="core">
<Who>grchiu@apache.org</Who>
<DateCommitted>2003/06/25</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xpath NodeSet.java</Modified>
<Log>
Patch from John Lambe (john.lambe@openjawtech.com) for bugzilla 20819
with some modifications. removeElement() and removeElementAt() were
not removing nodes correctly.
</Log>
</Commit>
<Commit category="core">
<Who>grchiu@apache.org</Who>
<DateCommitted>2003/06/26</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/templates ElemIf.java</Modified>
<Log>
Minor change to firing of trace events from xsl:if.
xsl:for-each now fires one trace event plus one for every iteration.
xsl:if should fire one regardless of whether or not the expression
evaluates true or false. Related to discussion on bug 11414.
</Log>
</Commit>
<Commit category="xsltc">
<Who>grchiu@apache.org</Who>
<DateCommitted>2003/06/26</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/dom UnionIterator.java</Modified>
<Log>
Patch from Christine Li (jycli@ca.ibm.com) for bugzilla 20913, with
modifications. In UnionIterator, after calling the getLast() method, the
heap is not restored properly. Recreate the heap in gotoMark(), as well
as restore _returnedLast and _heapSize.
</Log>
</Commit>
<Commit category="core">
<Who>zongaro@apache.org</Who>
<DateCommitted>2003/06/28</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xpath XPathContext.java xml-xalan/java/src/org/apache/xpath/functions FuncCurrent.java</Modified>
<Log>
Applied Igor Hersht's (igorh@ca.ibm.com) patch for Bugzilla bug 10900. Fixed
up algorithm for determining the result of the current() function to avoid
NullPointerException.
</Log>
</Commit>
<Commit category="xsltc">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/06/30</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/dom DocumentCache.java</Modified>
<Log>
Put back DocumentCache
</Log>
</Commit>
<Commit category="xsltc">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/06/30</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java xml-xalan/java/src/org/apache/xalan/xsltc
DOMCache.java xml-xalan/java/src/org/apache/xalan/xsltc/dom DocumentCache.java</Modified>
<Log>
Update the DocumentCache class to be compatible with the DOMCache
interface. Although, with the native interface no longer supported, users
should not be using the DocumentCache. Instead they should set a
URIResolver on the Transformer in order to resolve arguments
passed to the document function.
</Log>
</Commit>
<Commit category="xsltc">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/06/30</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/dom LoadDocument.java</Modified>
<Log>
Fix for 3 trax.localPath failures.
</Log>
</Commit>
<Commit category="core">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/07/02</DateCommitted>
<Modified> xml-xalan/java/src MANIFEST.MF manifest.xsltc xml-xalan/java/xdocs/sources/xalan downloads.xml xml-xalan/java/bin
java_cup.jar runtime.jar</Modified>
<Log>
Patch from Sarah McNamara (mcnamara@ca.ibm.com)
Moving java_cup.jar and runtime.jar from v0.10j to the latest version: v0.10k.
</Log>
</Commit>
<Commit category="core">
<Who>grchiu@apache.org</Who>
<DateCommitted>2003/07/02</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xpath/axes UnionChildIterator.java</Modified>
<Log>
Patch for bugzilla 20909.
Need to fix-up variables for PredicatedNodeTest sub-iterators in
UnionChildIterator. Variables in the m_nodeTests expressions were not
'fixed up'.
</Log>
</Commit>
<Commit category="core">
<Who>grchiu@apache.org</Who>
<DateCommitted>2003/07/02</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/templates ElemApplyTemplates.java</Modified>
<Log>
Adding missing trace events for xsl:with-param. Trace events for
xsl:with-param are fired as the parameter expressions are executed.
</Log>
</Commit>
<Commit category="core">
<Who>grchiu@apache.org</Who>
<DateCommitted>2003/07/03</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/templates ElemCallTemplate.java</Modified>
<Log>
Adding missing trace events for ElemWithParam as used in xsl:call-template.
Trace events for xsl:with-param are fired as the expression is executed.
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/07/07</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer NamespaceMappings.java ToHTMLStream.java ToStream.java
ToTextStream.java ToXMLSAXHandler.java</Modified>
<Log>
Patches for bugzilla 20841 and 21039.
PR: 20841, 21039
Submitted by: Brian Minchau
</Log>
</Commit>
<Commit category="core">
<Who>zongaro@apache.org</Who>
<DateCommitted>2003/07/07</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/templates ElemElement.java</Modified>
<Log>
Applying patch from David Bertoni (bertoni@us.ibm.com) for bug 20920. The code
for xsl:element was copying all accessible namespace declarations to the
result, but that's something that should only happen for literal result
elements.
</Log>
</Commit>
<Commit category="xsltc">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/07/07</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerImpl.java</Modified>
<Log>
Fix a memory leak problem with the DTMManager.
</Log>
</Commit>
<Commit category="xsltc">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/07/08</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/compiler CallTemplate.java Stylesheet.java Template.java</Modified>
<Log>
Fix a few conformance regressions introduced by the addParameter
optimization work.
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/07/08</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java</Modified>
<Log>
Fix for bugzilla 21423
PR: 21423
Bug caused by an optimization where the element name was not
remembered if the HTML tag was empty and the endElement() call
was coming right away. But XSLTC injected startNamespaceAfterElement()
in the middle, and it needed the element name, So startElement() records the
element name in the ElemContext even though the context is soon going away.
Submitted by: Brian Minchau
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/07/09</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java ToStream.java</Modified>
<Log>
Reduce the indentation level of end-element tags by 1 level.
PR: bugzilla 21449
Submitted by: Brian Minchau
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/07/09</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer ToStream.java WriterToUTF8.java WriterToUTF8Buffered.java</Modified>
<Log>
WriterToUTF8Buffered is now faster because it uses a character
array rather than a series of string.charAt(i) calls. Other changes
were also made to this class.
Performance gains are when writing to an output stream that has UTF-8 encoding.
WriterToUTF8 (not buffered) is deleted. On analysis, its slow feature was that it
didn't buffer and so it suffered many calls to the underlying OutputStream. The more work that was done to
this class to speed it up, the more it looked like WriterToUTF8Buffered.
PR: bugzilla 21452
Submitted by: Brian Minchau
</Log>
</Commit>
<Commit category="core">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/07/10</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xpath/compiler Compiler.java</Modified>
<Log>
Fix for bugzilla 17630 (method keys for extension functions are not unique).
</Log>
</Commit>
<Commit category="xsltc">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/07/10</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/util IntegerArray.java</Modified>
<Log>
Fix for bugzilla 20074. Don't create an IntegerArray of size 0.
</Log>
</Commit>
<Commit category="core">
<Who>minchau@apache.org</Who>
<DateCommitted>2003/07/11</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer WriterToUTF8Buffered.java</Modified>
<Log>
Fix to WriterToUTF8Buffered to ALWAYS buffer regardless of the
size of the input char array or String. This is achieved by logically cutting
the input into chunks, each of which will not blow the internal byte buffer,
and calling itself recursively.
PR: bugzilla 21491
Submitted by: Brian Minchau
</Log>
</Commit>
<Commit category="xsltc">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/07/11</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util ErrorMessages.java ErrorMsg.java
xml-xalan/java/src/org/apache/xalan/xsltc/trax TransformerHandlerImpl.java</Modified>
<Log>
XSLTC: TransformerHandler.setResult should throw an IllegalArgumentException
when the result argument is null.
</Log>
</Commit>
<Commit category="core">
<Who>johng@apache.org</Who>
<DateCommitted>2003/07/15</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/lib/sql SQLQueryParser.java</Modified>
<Log>
Fixed NPE bug with inline variables
</Log>
</Commit>
<Commit category="xsltc">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/07/16</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util MethodGenerator.java</Modified>
<Log>
Fix for bug 20256. Remove an unused reference to an
inexistent class.
</Log>
</Commit>
<Commit category="core">
<Who>grchiu@apache.org</Who>
<DateCommitted>2003/07/17</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer ToStream.java</Modified>
<Log>
Fix for bugzilla 21697:
processAttributes always called writeAttrString with m_writer, regardless
of which writer was passed to it. Now always using the passed writer.
</Log>
</Commit>
<Commit category="xsltc">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/07/21</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Import.java Include.java</Modified>
<Log>
Patch for bugzilla #20537.
When URIResolver was set for includes/imports, the system id of the included/imported
files was not always set correctly.
</Log>
</Commit>
<Commit category="core">
<Who>zongaro@apache.org</Who>
<DateCommitted>2003/07/21</DateCommitted>
<Modified> xml-xalan/java KEYS</Modified>
<Log>
Adding my public key.
</Log>
</Commit>
<Commit category="xsltc">
<Who>zongaro@apache.org</Who>
<DateCommitted>2003/07/22</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Predicate.java</Modified>
<Log>
Applying patch from Igor Hersht (igorh@ca.ibm.com) for Bugzilla bug 18821.
At some point in the recent past, Predicate started trying to optimize filter
expressions with positional predicates, but the receiving code in FilterExpr
was always incorrect. The fixes to FilterExpr and related code aren't so
straightforward, so the easiest thing to do for now is to disable the
broken optimization for FilterExpr objects.
</Log>
</Commit>
<Commit category="xsltc">
<Who>zongaro@apache.org</Who>
<DateCommitted>2003/07/22</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/dom UnionIterator.java</Modified>
<Log>
Applying patch from Igor Hersht (igorh@ca.ibm.com) for Bugzilla bug 18821.
Nested iterators in UnionIterator weren't correctly handling multiple calls to
setStartNode in generated code. Fixed by ignoring calls after the first.
</Log>
</Commit>
<Commit category="core">
<Who>zongaro@apache.org</Who>
<DateCommitted>2003/07/22</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/templates FuncFormatNumb.java</Modified>
<Log>
Applying patch from Igor Hersht (igorh@ca.ibm.com) for Bugzilla bug 6155.
Prior to looking up an unnamed decimal format, the FuncFormatNumb.execute
method was calling the stylesheet's getDecimalFormatCount method to save the
cost of the look-up, in the event the result was zero. The problem is that
that method only returns the number of decimal-formats prior to composition of
multiple stylesheets into a single stylesheet, so it was incorrectly returning
zero always. Now, the FuncFormatNumb.execute always performs the look-up.
</Log>
</Commit>
<Commit category="core">
<Who>grchiu@apache.org</Who>
<DateCommitted>2003/07/23</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xpath/axes DescendantIterator.java</Modified>
<Log>
Fix for bugzilla 21713: need to check m_allowDetach before detach()ing an
iterator of type DescendantIterator. (Thanks to Morris Kwan for reviewing
this patch.)
</Log>
</Commit>
<Commit category="xsltc">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/07/25</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/compiler LiteralElement.java</Modified>
<Log>
Fix for bugzilla 20832. Also fix testcase attribset19.
</Log>
</Commit>
<Commit category="xsltc">
<Who>mkwan@apache.org</Who>
<DateCommitted>2003/07/25</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Stylesheet.java</Modified>
<Log>
Fix for bugzilla 21805.
</Log>
</Commit>
<Commit category="core">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/07/29</DateCommitted>
<Modified> xml-xalan/java/src xml-commons-src.tar.gz xml-xalan/java/bin xml-apis.jar</Modified>
<Log>
Updating with latest code from the tck-jaxp_1_2_0 branch of xml-commons
which contains the SAX 2.0.1 code.
</Log>
</Commit>
<Commit category="xsltc">
<Who>zongaro@apache.org</Who>
<DateCommitted>2003/08/01</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Stylesheet.java</Modified>
<Log>
Added code to create static char[] fields in the translet containing the
literal text in the source stylesheet. The code generation for xsl:comment and
for literal text that constructs text nodes takes advantage of this by using
the serializer's comment(char[],int,int) and characters(char[],int,int) methods,
respectively, rather than the comment(String) and characters(String) methods.
The former pair of methods avoid some potential overhead in the serializer from
copying the contents of strings to char[] objects.
Code that creates a static initializer method in a translet was written by
Morris Kwan (mkwan@ca.ibm.com).
Reviewed by Morris Kwan (mkwan@ca.ibm.com)
</Log>
</Commit>
<Commit category="xsltc">
<Who>zongaro@apache.org</Who>
<DateCommitted>2003/08/01</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/compiler Comment.java Constants.java Text.java XSLTC.java</Modified>
<Log>
Added code to create static char[] fields in the translet containing the
literal text in the source stylesheet. The code generation for xsl:comment and
for literal text that constructs text nodes takes advantage of this by using
the serializer's comment(char[],int,int) and characters(char[],int,int) methods,
respectively, rather than the comment(String) and characters(String) methods.
The former pair of methods avoid some potential overhead in the serializer from
copying the contents of strings to char[] objects.
Reviewed by Morris Kwan (mkwan@ca.ibm.com)
</Log>
</Commit>
<Commit category="core">
<Who>zongaro@apache.org</Who>
<DateCommitted>2003/08/01</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer ToHTMLStream.java</Modified>
<Log>
Made a couple of improvements to startElement and endElement to cache
m_elemContext in a local variable. Also, replaced calls to ElemDesc.is with a
single call to ElemDesc.getFlags, and used inline code to check flag settings.
Reviewed by Brian Minchau (minchau@ca.ibm.com).
</Log>
</Commit>
<Commit category="core">
<Who>zongaro@apache.org</Who>
<DateCommitted>2003/08/01</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/serializer ElemDesc.java</Modified>
<Log>
Added a getFlags() method to allow all flags on an ElemDesc object to be
retrieved at once, rather than forcing multiple calls to ElemDesc.is(int).
Also, marked class final.
Reviewed by Brian Minchau (minchau@ca.ibm.com).
</Log>
</Commit>
<Commit category="core">
<Who>ilene@apache.org</Who>
<DateCommitted>2003/08/05</DateCommitted>
<Modified> xml-xalan/java/bin xml-apis.jar xml-xalan/java/src xml-commons-src.tar.gz</Modified>
<Log>
Backing out SAX 2.0.1 xml-apis to the level used in XalanJ 2.5.1.
</Log>
</Commit>
<Commit category="xsltc">
<Who>grchiu@apache.org</Who>
<DateCommitted>2003/08/06</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xalan/xsltc/trax TemplatesHandlerImpl.java</Modified>
<Log>
Patch from Bruno Dumon (bruno@outerthought.org) for bugzilla 20114.
When using XSLTC's TemplatesHandler to create templates, errors are never
reported; getTemplates() just returns null.
Changed behaviour to be inline with Xalan behaviour: stylesheets are
compiled in the endDocument() event and a SAXException wrapping the real
exception is thrown.
</Log>
</Commit>
<Commit category="core">
<Who>igorh@apache.org</Who>
<DateCommitted>2003/08/08</DateCommitted>
<Modified> xml-xalan/java/src/org/apache/xml/utils SystemIDResolver.java</Modified>
<Log>
Patch for Bugzilla Bug 21893
</Log>