**** Merged from MCS ****
[mono-project.git] / mcs / class / System.XML / Mono.Xml.XPath / ChangeLog
blobfcb4cc347b64abf4853fa74c3b2153f406b93487
1 2004-10-29  Atsushi Enomoto <atsushi@ximian.com>
3         * XPathEditableDocument.cs : internalize classes.
5 2004-10-28  Atsushi Enomoto <atsushi@ximian.com>
7         * XPathEditableDocument.cs : fixed wrong recursion problem.
9 2004-10-22  Atsushi Enomoto <atsushi@ximian.com>
11         * XPathEditableDocument.cs :
12           Now it implements updated version of .NET 2.0.
13           .ctor() should accept XmlNode, instead of XmlDocument.
15 2004-10-09  Atsushi Enomoto <atsushi@ximian.com>
17         * XPathNavigatorReader.cs : should be NET_2_0.
19 2004-10-08  Atsushi Enomoto <atsushi@ximian.com>
21         * XPathNavigatorReader.cs : IsDefault considers IXmlSchemaInfo
22           (it is anyways not implemented as yet.)
24 2004-10-05  Atsushi Enomoto <atsushi@ximian.com>
26         * XPathNavigatorReader.cs : Actually all other kind of nodes than
27           Element and Root must be treated as "start node only" as well as
28           attributes and namespaces.
30 2004-10-05  Atsushi Enomoto <atsushi@ximian.com>
32         * XPathDocument2Editable.cs : for WriteAttributes(), use
33           CreateAttributesWriter() that creates attribute tree XmlWriter.
34         * XPathNavigatorReader.cs : the reader was missing attributes when
35           it is created with an element node that has attriibutes.
37 2004-10-04  Atsushi Enomoto <atsushi@ximian.com>
39         * XPathNavigatorReader.cs : It can reject attribute and namespace
40           nodes as its input (It is used only for WriteNode(), InsertBefore()
41           and so on, which are not intended to be used with attribute nodes).
42           On Initial state, it was Element that should check IsEmptyElement,
43           and Root should just go to the first child node.
45 2004-10-04  Atsushi Enomoto <atsushi@ximian.com>
47         * XPathNavigatorReader.cs : When the reader's root node is not of type
48           Root, it incorrectly skipped the node itself.
50 2004-09-06  Atsushi Enomoto <atsushi@ximian.com>
52         * XPathDocument2.cs, XPathDocument2Editable.cs:
53           Redesigned API. Child node list should not be required (it also
54           harms performance). Reduced extraneous methods for XPathNavigator
55           / XPathEditableNavigator implementation support.
56         * XPathEditableDocument.cs : event registration was missing (due to
57           XPathDocument changes, it might not be required anymore though).
58         * XPathNavigatorReader.cs :
59           Namespace nodes were not handled correctly.
60           EOF handling was incorrect.
61           Reduced extraneous clone from MoveTo/GetAttribute(int) and
63 2004-09-01  Atsushi Enomoto <atsushi@ximian.com>
65         * XPathNavigatorReader.cs : on GetAttributeNavigator(int), namespace
66           node could be this XmlReader's attribute node.
68 2004-08-02  Atsushi Enomoto <atsushi@ximian.com>
70         * XPathDocument2.cs : new IXPathNavigable implementation
71           XPathDocument2Navigator.cs : new XPathNavigator implementation
72           XPathDocument2Editable.cs : new XPathEditableNavigator implementation
74         To use them in XPathDocument, set environment MONO_XPATH_DOCUMENT_2=yes
75         (It is still too unstable to pass all nunit tests and standalone XSLT
76         tests).
78 2004-07-30  Atsushi Enomoto <atsushi@ximian.com>
80         * DTMXPathNavigator.cs :
81           Fixed IsSamePosition(). currentAttr is not always the same as
82           that of other when current is not attribute. Ditto for currentNS
83           (when current is not namespace).
84         * XPathNavigatorReader.cs : Fixed NodeType - 1) When attribute value is
85           being consumed, then node type should be Text, and 2) Root node is
86           usually mapped to Document, but XmlReader never returns Document,
87           just None (both on Initial state and EndOfFile state).
89 2004-07-30  Atsushi Enomoto <atsushi@ximian.com>
91         * XPathNavigatorReader.cs : fixed GetAttributeNavigator() that
92           incorrectly used MoveToNextAttribute().
94 2004-07-29  Atsushi Enomoto <atsushi@ximian.com>
96         * XPathNavigatorReader.cs :
97           - it is used only in 2.0 classes.
98           - It now behaves as a fragment reader.
99           - Depth is optimized not to call Clone() and MoveToParent().
100           - AttributeCount could be counted only once in Read().
101           - ReadState transition is adjusted to be same as other XmlReaders.
102           - name strings now return "" on initial state.
104 2004-07-28  Atsushi Enomoto <atsushi@ximian.com>
106         * Added XPathEditableDocument.cs.
107           - XPathEditableDocument provides IXPathEditable.
108           - XmlDocumentEditableNavigator implements XPathEditableNavigator
109             that supports CreateAttributes(), AppendChild() and so on.
111           It is nothing more than hack, and as an XPathEditableNavigator
112           provider for XPathDocument, it will be replaced by something.
114 2004-07-13  Atsushi Enomoto <atsushi@ximian.com>
116         * Added XPathNavigatorReader.cs.
118 2004-06-06  Atsushi Enomoto <atsushi@ximian.com>
120         * DTMXPathDocumentBuilder.cs : Close XmlTextReader strictly. It might
121           raise an error after opening stream and before try-catch.
123 2004-05-20  Atsushi Enomoto <atsushi@ximian.com>
125         * Pattern.cs : don't throw System.Exception. Delegate error handling to
126           the only one caller CompilePattern().
128 2004-05-12  Atsushi Enomoto <atsushi@ximian.com>
130         * Pattern.cs : made class internal.
132 2004-02-26  Atsushi Enomoto <atsushi@ximian.com>
134         * DTMXPathDocumentBuilder.cs : Close XmlReader when we passed uri.
136 2004-02-18  Atsushi Enomoto <atsushi@ximian.com>
138         * LocationPathPattern.cs : Implemented easy XPathNavigator cache on
139           predicate evaluation in Matches().
141 2004-02-17  Atsushi Enomoto <atsushi@ximian.com>
143         * KeyPattern.cs, Pattern.cs : removed using decls.
145 2004-02-17  Atsushi Enomoto <atsushi@ximian.com>
147         * LocationPathPattern.cs : Optimized Matches(). For non-positional
148           patterns, it never iterates predicate, just evaluate boolean.
150 2004-02-16  Atsushi Enomoto <atsushi@ximian.com>
152         * DTMXPathDocument.cs,
153           DTMXPathDocumentBuilder.cs,
154           DTMXPathDocumentWriter.cs,
155           DTMXPathNavigator.cs,
156           DTMXPathNode.cs :
157             Made classes internal by default (still publicly available with
158             OUTSIDE_SYSTEM_XML switch). Removed unused "position" field.
159             Optimized DTMXPathNavigator.Value a bit.
160         * LocationPathPattern.cs : Modified some fields to private.
162 2004-02-13  Atsushi Enomoto <atsushi@ximian.com>
164         * Added DTMXPathDocumentWriter.cs. It supports DTMXPathNavigator as
165           the resulting document tree.
166         * DTMXPathDocumentBuilder.cs : Code refactory (to get closer to dtm
167           writer and commonify tasks they both should do). Reduced initial
168           array size (400 to 200, for attribute 800 to 200), and extending 
169           size from 2x to 4x (to reduce _times_ of allication copy).
170         * DTMXPathNode.cs : (and all above) added experimental "DTM_CLASS"
171           switch, which changes nodes from struct to class. (It will reduce
172           memory consumption by 2/3, but will also reduce speed by 2/3.)
174 2004-01-27  Atsushi Enomoto <atsushi@ximian.com>
176         * DTMXPathDocumentBuilder.cs : Namespace nodes are incorrectly created.
177           This fix should make XPathDocument compatible with XmlDocument.
179 2004-01-26  Atsushi Enomoto <atsushi@ximian.com>
181         * DTMXPathDocument.cs : CreateNavigator() should return the first root
182           as a clone.
183         * DTMXPathNavigator.cs : ComparePosition() incorrectly compared 
184           attributes and namespaces orders.  Implemented IsSamePosition() more
185           efficient.  MoveToFirstNamespace() should return false when the 
186           current node is either attribute or namespace.  Fixed IsDescendant()
187           which looks resulted in incorrect behavior.
189 2003-12-18  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
191         * DTMXPathDocumentBuilder.cs : Removed supportsID argument and always
192           assumes to support IDs when specified XmlValidatingReader.
193           Quick fix for NullReferenceException when type was null.
195 2003-11-19  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
197         * KeyPattern.cs : Matches() should iterate candidate keys to the end.
199 2003-11-19  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
201         * IdPattern.cs,
202           KeyPattern.cs : Implemented Matches(), overrode DefaultPriority,
203           modified inheritance.
204         * Pattern.cs : Added id and key pattern support.
206 2003-11-02  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
208         * DTMXPathNavigator.cs : Fixed MoveToNamespace() that might result in
209           infinite loop.
211 2003-10-04  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
213         * DTMXPathDocumentBuilder.cs : Bugfix for whitespace handling.
215 2003-10-01  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
217         * Added DTMXPathNode.cs.
218         * Fundamental changes in whole DTM stuff. Node information is now array
219           of "node struct" instead of individual arrays.
221 2003-09-21 Ben Maurer  <bmaurer@users.sourceforge.net>
223         * Pattern.cs: save the parser (will reduce memory allocation when
224         Jackson's jay patch is committed).
226 2003-09-20 Ben Maurer  <bmaurer@users.sourceforge.net>
228         * Pattern.cs: Typo, when i got //a i was giving off /
229         * LocationPathPattern.cs: Append to the tail, not head.
231 2003-09-14  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
233         * DTMXPathNavigator.cs,
234           DTMXPathDocument.cs,
235           DTMXPathDocumentBuilder.cs : Added IXmlLineInfo support. Removed
236           node's extraneous schemaType. Some code reformatting.
238 2003-09-13 Ben Maurer  <bmaurer@users.sourceforge.net>
240         * Pattern.cs: Support static context.
242 2003-08-25 Ben Maurer  <bmaurer@users.sourceforge.net>
244         * DTMXPathNavigator.cs: Allocate valueBuilder on first use.
246 2003-08-14  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
248         * DTMXPathDocument.cs,
249           DTMXPathDocumentBuilder.cs,
250           DTMXPathNavigator.cs :
251           - Implemented ID support using XmlValidatingReader.
252           - Prefix should be String.Empty even if XmlReader.Prefix is null.
254 2003-07-23  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
256         * DTMXPathDocumentBuilder.cs :
257           Fixed Read() that sets nodes' parent incorrectly.
259 2003-07-17  Peter Williams  <peter@newton.cx>
261         * DTMXPathDocumentBuilder.cs: csc.exe is more stringent about namespaces
262         than mcs. We need to disambiguate System.Math from Mono.Math here.
264 2003-06-30  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
266         * Initial checkin.
267         * Added ChangeLog, DTMXPathDocument.cs, DTMXPathDocumentBuilder.cs
268           and DTMXPathNavigator.cs.