ChangeLog 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874
  1. 2004-11-08 Atsushi Enomoto <[email protected]>
  2. * Tokenizer.cs : just use raw string instead of char[].
  3. * XPathNavigator.cs : reuse NameTable when creating XmlTextReader.
  4. 2004-11-07 Atsushi Enomoto <[email protected]>
  5. * Iterator.cs :
  6. - Made copy constructor certainly different from other constructors.
  7. - Position is never computed in each derived type. All MoveNext() are
  8. now MoveNextCore().
  9. - Most of the protected members could just be private.
  10. 2004-11-05 Atsushi Enomoto <[email protected]>
  11. * Expression.cs, XPathNavigator.cs : hold raw expression field for
  12. get_Expression. It is preparation for expression optimization.
  13. 2004-11-05 Atsushi Enomoto <[email protected]>
  14. * Iterator.cs : SimpleIterator._current could be cloned only when
  15. it is required.
  16. 2004-11-05 Atsushi Enomoto <[email protected]>
  17. * Iterator.cs : Some removal of Clone() were harmless.
  18. 2004-10-22 Atsushi Enomoto <[email protected]>
  19. * XPathDocument.cs : now all the new stuff that used to be in 2.0 are
  20. reverted.
  21. * XPathEditableNavigator.cs : It will be removed. Right now modified
  22. a bit to pass build.
  23. * XPathNavigator.cs : Added members that are merged from
  24. XPathEditableNavigator. Updated members name.
  25. 2004-10-14 Atsushi Enomoto <[email protected]>
  26. * Iterator.cs :
  27. - Added WrapperIterator to return BaseIterator in such case that
  28. variable reference is resolved to XPathNodeIterator. This fixes
  29. bug #68267.
  30. - Path ".." is reverse axis (actually no effect).
  31. - Fixed DescendantIterator.Clone() that missed "_finished" field.
  32. * Expression.cs :
  33. In ExprVariable.Evaluate(), use WrapperIterator() for custom
  34. XPathNodeIterator.
  35. 2004-10-09 Atsushi Enomoto <[email protected]>
  36. * XPathAtomicValue.cs : Init(string, XmlSchemaType) is private.
  37. 2004-10-05 Atsushi Enomoto <[email protected]>
  38. * XPathAtomicValue.cs : missing Init() definition for float and string;
  39. latter one resulted in infinite loop in Init(object,XmlSchemaType).
  40. 2004-10-04 Atsushi Enomoto <[email protected]>
  41. * XPathNavigator.cs : TypedValue could be implemented.
  42. * XPathEditableNavigator.cs : removed some MonoTODO since now there
  43. are implementations.
  44. 2004-09-13 Atsushi Enomoto <[email protected]>
  45. * XPathAtomicValue.cs : All .ctor() are separeted from Init().
  46. In .ctor(object, XmlSchemaType):
  47. - For lists that contains just one item, Init() recursively.
  48. - For XPathAtomicValue, Init() recursively for its content fields.
  49. For Value and TypedValue, consider typecode from XmlSchemaType.
  50. 2004-09-06 Atsushi Enomoto <[email protected]>
  51. * XPathEditableNavigator.cs :
  52. AppendChild(xmlReader) ignored nodes after than first one, and
  53. resulted in infinite loop.
  54. Added get_OuterXml overrides. set_OuterXml should not move to
  55. parent before deleting current.
  56. 2004-08-25 Atsushi Enomoto <[email protected]>
  57. * XPathAtomicValue.cs : Value was not returning expected value when
  58. it is created as new XPathAtomicValue (object, XmlSchemaType).
  59. Compute stringValue and reuse.
  60. * XPathNavigator.cs : Temporarily stubbed as to ignore SchemaInfo
  61. (for checking XQuery implementation).
  62. 2004-08-25 Atsushi Enomoto <[email protected]>
  63. * XPathAtomicValue.cs : Handle .ctor() with object parameter more
  64. precisely (still not enough, for list argument).
  65. Removed commended blocks.
  66. 2004-08-24 Atsushi Enomoto <[email protected]>
  67. * XPathAtomicValue.cs : DateTime should be convertible to string.
  68. Use schemaType's TypeCode for .ctor() that takes object.
  69. * XPathNavigator.cs : copied get_InnerXml from XPathEditableNavigator.
  70. * XPathEditableNavigator.cs : set_InnerXml should be different (new)
  71. property from get_InnerXml. Removed get_InnerXml and get_OuterXml
  72. overrides.
  73. 2004-08-23 Atsushi Enomoto <[email protected]>
  74. * XPathAtomicValue.cs, XPathNavigator.cs : Eliminate MS.Internal.Xml.*.
  75. 2004-08-03 Atsushi Enomoto <[email protected]>
  76. * XPathEditableNavigator.cs : implemented some editor support methods.
  77. 2004-08-02 Atsushi Enomoto <[email protected]>
  78. * XPathDocument.cs :
  79. - For .NET 2.0, added a switch to support new XPathDocument2.
  80. If switch is off, then it uses DTM.
  81. - Implemented remaining 2.0 bits (except for Obsolete ones).
  82. To use them in XPathDocument, set environment MONO_XPATH_DOCUMENT_2=yes
  83. (It is still too unstable to pass all nunit tests and standalone XSLT
  84. tests).
  85. 2004-07-29 Atsushi Enomoto <[email protected]>
  86. * XPathNavigator.cs : Implemented ReadSubtree().
  87. 2004-07-28 Atsushi Enomoto <[email protected]>
  88. * XPathDocument.cs : for .ctor() and .ctor(XmlNameTable), now it
  89. creates Mono.Xml.XPath.XPathEditableDocument and thus supports
  90. IXPathEditable.CreateEditor().
  91. 2004-07-28 Atsushi Enomoto <[email protected]>
  92. * XPathEditableNavigator.cs : Implemented InsertAfter() and
  93. PrependChild(); they are virtual, not abstract.
  94. * XPathNavigator.cs :
  95. Implemented many 2.0 virtual properties and methods that were
  96. abstract in 1.x.
  97. Implemented some Select() methods that uses IXmlNamespaceResolver.
  98. Implemented most of ValueAsXxx() using XQueryConvert.
  99. IsNode is always true. Implemented OuterXml and WriteSubtree() (but
  100. actually they don't work because it depends on ReadSubtree()).
  101. 2004-07-26 Atsushi Enomoto <[email protected]>
  102. * XPathDocument.cs : added missing && not-likely-to-be-removed members.
  103. * XPathEditableNavigator.cs : added BuildSubTree().
  104. * XPathException.cs : added missing methods. Hide Message in NET_2_0.
  105. 2004-07-23 Atsushi Enomoto <[email protected]>
  106. * XPathNodeIterator.cs : implemented 2.0 GetEnumerator().
  107. 2004-07-21 Atsushi Enomoto <[email protected]>
  108. * XPathExpression.cs, Expression.cs :
  109. Added SetContext(IXmlNamespaceResolver).
  110. * NodeChangedEventArgs.cs : Added missing [MonoTODO].
  111. * XPathAtomicValue.cs : Halfly implemented.
  112. * XPathDocument.cs : Added 2.0 members.
  113. * XPathDocumentNodeChangedAction.cs : updated member names.
  114. * XPathEditableNavigator.cs : Added missing 2.0 members and MonoTODO.
  115. * XPathNavigator.cs : Added missing 2.0 members.
  116. Fixed some members as virtual->override.
  117. 2004-07-13 Atsushi Enomoto <[email protected]>
  118. * XmlNodeChageType.cs, XmlChangeFilters.cs : fixed enum values.
  119. * XPathResultType.cs : marked [MonoFIX] on .Navigator.
  120. 2004-07-11 Atsushi Enomoto <[email protected]>
  121. * Expression.cs, Iterator.cs, XPathNavigator.cs :
  122. Use IXmlNamespaceResolver for net 2.0. Removed unused code.
  123. * XPathEditableNavigator.cs : fixed namespace.
  124. * XPathNavigator.cs :
  125. Fixed inheritance. Added missing MonoTODO.
  126. Removed old .net 1.2 code.
  127. 2004-06-18 Atsushi Enomoto <[email protected]>
  128. * DefaultContext.cs : Globalization.
  129. * Iterator.cs : In SlashIterator.MoveNext() position might keep 0
  130. in case of empty list. Thus extraneous iteration might happened.
  131. Removed unused (and clone unsafe) EnumeratorIterator.
  132. 2004-06-06 Atsushi Enomoto <[email protected]>
  133. * XPathDocument.s : The previous patch is still incomplete to close.
  134. 2004-06-05 Atsushi Enomoto <[email protected]>
  135. * XPathDocument.cs : close self-opened XmlTextReader in .ctor().
  136. 2004-06-03 Atsushi Enomoto <[email protected]>
  137. * Expression.cs : LookupNamespace() only allows already-atomized names.
  138. * XPathEditableNavigator.cs : removed incorrect set_OuterXml() and
  139. set_InnerXml().
  140. 2004-05-22 Atsushi Enomoto <[email protected]>
  141. * DefaultContext.cs : Add XPathNavigator input support for ToBoolean()
  142. and ToNavigator().
  143. * Expression.cs : In Equality comparison, evaluate XPathNavigator in
  144. the same as well as NodeSet. This fixes bug #59134.
  145. 2004-05-22 Atsushi Enomoto <[email protected]>
  146. * XPathAtomicValue.cs : missed NET_2_0.
  147. 2004-05-22 Atsushi Enomoto <[email protected]>
  148. * IXPathChangeNavigable.cs,
  149. IXPathEditable.cs,
  150. NodeChangedEventArgs.cs,
  151. NodeChangedEventHandler.cs,
  152. XPathAtomicValue.cs,
  153. XPathChangeNavigator.cs,
  154. XPathDocumentNodeChangedAction.cs,
  155. XPathEditableNavigator.cs,
  156. XPathItem.cs,
  157. XmlChangeFilters.cs,
  158. XmlNodeChangeType.cs : added NET_2_0 classes.
  159. * XPathDocument.cs,
  160. XPathNavigator.cs : updated NET_2_0 members.
  161. 2004-05-20 Atsushi Enomoto <[email protected]>
  162. * Expression.cs : We should not catch all kind of exception. Just
  163. throwing any kind of exception would be preferable.
  164. Added support for XPathNavigator values.
  165. 2004-05-13 Atsushi Enomoto <[email protected]>
  166. * DefaultContext.cs : Removed MonoTODO. done.
  167. * Expression.cs : handle XPathResultType.Navigator in some places and
  168. removed MonoTODO. Mark MonoTODO with explicit comments (though they
  169. are mostly pointing out possibilities of optimization).
  170. Removed extra check that depended on the old bugs.
  171. * XPathResultType.cs : Fixed .Navigator that had the same value as
  172. .String.
  173. 2004-05-12 Atsushi Enomoto <[email protected]>
  174. * Parser.jay : made class internal.
  175. 2004-03-16 Atsushi Enomoto <[email protected]>
  176. * XPathNavigator.cs, Iterator.cs : Considered detached nodes, the
  177. result of MoveToParent() should be checked.
  178. 2004-02-17 Atsushi Enomoto <[email protected]>
  179. * XPathNavigator.cs : Only child and attribute axes are allowed for
  180. Matches().
  181. * Expression.cs : Added IsPositional property.
  182. * DefaultContext.cs : Added some overrides.
  183. 2004-02-16 Atsushi Enomoto <[email protected]>
  184. * XPathNavigator.cs : no, its still not ok. comment out now.
  185. 2004-02-16 Atsushi Enomoto <[email protected]>
  186. * Expression.cs : Added EvaluatedNodeType and NeedAbsoluteMatching
  187. to reduce extraneous Matches() trial.
  188. * Iterator.cs : Removed unused MergedIterator.
  189. * XPathNavigator.cs : Optimized Matches() not to evaluate ancestors
  190. unnecessarily. (Test with NeedAbsoluteMatching).
  191. 2004-02-10 Atsushi Enomoto <[email protected]>
  192. * Iterator.cs : Added overriden Count properties for some iterators
  193. (this fixes the half of #50678).
  194. Added ListIterator class (which can reduce GetEnumerator()).
  195. In some places we can omit clone for Current property, so added
  196. some check logic (It has no effect as yet).
  197. * Expression.cs, DefaultContext.cs :
  198. use ListIterator instead of EnumeratorIterator.
  199. 2004-02-08 Atsushi Enomoto <[email protected]>
  200. * DefaultContext.cs, Expression.cs, Iterator.cs :
  201. tiny foreach elimination.
  202. 2004-02-05 Atsushi Enomoto <[email protected]>
  203. * DefaultContext.cs : trivial processing order fix.
  204. 2004-01-27 Atsushi Enomoto <[email protected]>
  205. * DefaultContext.cs : Avoid exception if possible.
  206. * Iterator.cs : Fixed PrecedingSiblingIterator.MoveNext(). When the
  207. nav was positioned at the first, it incorrectly points itself.
  208. Don't add names to name table while it is useless and expensive.
  209. 2004-01-08 Nick Drochak <[email protected]>
  210. * Iterator.cs: Removed unused variable.
  211. 2003-12-18 Atsushi Enomoto <[email protected]>
  212. * Parser.jay : now it supresses error output from jay.
  213. * DefaultContext.cs : (XPathFunctionSubstring) exclude -Infinity.
  214. * Tokenizer.cs : better error message.
  215. * XPathDocument.cs : Use XmlValidatingReader to support id() function.
  216. (just found MS.NET actually supports it)
  217. 2003-12-16 Atsushi Enomoto <[email protected]>
  218. * Iterator.cs : On its iteration, moving Current must not affect to
  219. MoveNext(). To assure this, Current must be a clone of navigator.
  220. Removed unused code.
  221. 2003-12-07 Atsushi Enomoto <[email protected]>
  222. * Tokenizer.cs : Removed some TODOs. (trivial ;-)
  223. * Iterator.cs : ParensIterator can inherit from BaseIterator.
  224. SlashIterator copy .ctor() always failed to clone. This fixes Count.
  225. 2003-12-03 Atsushi Enomoto <[email protected]>
  226. * Expression.cs : XPathSorters.Compare() should compare document
  227. position. See last sentence of XSLT 1.0 secion 10.
  228. 2003-12-03 Atsushi Enomoto <[email protected]>
  229. * DefaultContext.cs : Overrode all functions' ToString().
  230. XPathFunctions.ToNumber() trims whitespaces at both side.
  231. Fixed NullReferenceException in normalize-space().
  232. * Iterator.cs : Fixed AncestorOrSelfIterator.MoveNext() didn't handle
  233. attribute or namespace node correctly.
  234. SlashIterator.Clone() didn't clone "next node iterator" correctly.
  235. EnumeratorIterator.ctor() should raise an error (not at Clone())
  236. when the target IEnumerator is not ICloneable.
  237. 2003-11-28 Atsushi Enomoto <[email protected]>
  238. * Expression.cs : namespace axis now traversed in reverse order, so it
  239. requires sorting.
  240. * Iterator.cs : UnionIterator.Clone() was incomplete.
  241. NamespaceItarator() should be reverse order (special handling
  242. because of XPathNavigator specification).
  243. 2003-11-24 Atsushi Enomoto <[email protected]>
  244. * Iterator.cs : PrecedingIterator.MoveNext() now breaks up at Root.
  245. * XPathNavigator.cs : ComparePosition() didn't handle attributes
  246. correctly.
  247. 2003-11-24 Atsushi Enomoto <[email protected]>
  248. * Parser.jay, Expression.cs, Iterator.cs :
  249. Added ExprParens and ParensIterator classes which is used to handle
  250. precedence of parenthesized expressions.
  251. (e.g. consider "(preceding::*)[3]" and "preceding::[3]" )
  252. * Expression.cs, Iterator.cs :
  253. Added RequireSorting property for each Expr and BaseIterator classes.
  254. SlashIterator.MoveNext() now considers correct sorting. But
  255. considering performance, it separates two logics, sorted and sortless
  256. depending on RequireSorting of left iterator and right expression.
  257. * Iterator.cs :
  258. SimpleIterator.ctor() should consider when nav is null.
  259. FollowingIterator.MoveNext() and PrecedingIterator.MoveNext() should
  260. not return any nodes.
  261. AncestorIterator and AncestorOrSelfIterator copy ctr() should clone
  262. positions.
  263. AncestorIterator.MoveNext() should skip Root if context node is
  264. Root itself.
  265. FollowingIterator.MoveNext() should not handle children of context
  266. itself.
  267. PrecedingIterator.MoveNext() should skip its ancestors.
  268. AxisIterator.ReverseAxis should be dependent on its containing iter.
  269. UnionIterator.MoveNext() should consider comparison of nodes in
  270. different document. The behavior is implementation dependent.
  271. (see XSLT spec 12.1)
  272. 2003-11-19 Atsushi Enomoto <[email protected]>
  273. * Added XPathComparer.cs
  274. * DefaultContext.cs : Fixed XPathFunctionId.Evaluate() to iterate base
  275. iterator correctly, and sort results.
  276. 2003-11-19 Atsushi Enomoto <[email protected]>
  277. * DefaultContext.cs : Imcomplete fix ;-)
  278. 2003-11-19 Atsushi Enomoto <[email protected]>
  279. * DefaultContext.cs : XPathFunctions.ToNumber() should catch overflow.
  280. XPathFunctionId.cs : Exposed Id expression.
  281. * Expression.cs : Added ExprLiteral.Value, and class ExprParens (it
  282. will be used to solve evaluation precedence problem).
  283. 2003-11-09 Atsushi Enomoto <[email protected]>
  284. * Iterator.cs : Fixed SlashIterator that might return nodes 1)in
  285. inconsistent order, and 2)may return duplicate result nodes.
  286. 2003-11-06 Ben Maurer <[email protected]>
  287. * Iterator.cs: (AxisIterator.ComparablePosition): Remove. Let
  288. it inherit from the base class. This made b[2] evaluated on
  289. <a /><b /><c /><a /><b /><c /> return the first b node because
  290. in the ChildIterator it was the second node and seemed to satsify
  291. the predicate.
  292. 2003-11-04 Atsushi Enomoto <[email protected]>
  293. * Iterator.cs : Added bool ReverseAxis property to identify whether
  294. the iterator is in reverse order or not. Added ComparablePosition
  295. for correct position comparison for PredicateIterator and reverse-
  296. order-axes. Modified AncestorIterator, AncestorOrSelfIterator,
  297. PrecedingIterator and PrecedingSiblingIterator to make MoveNext()
  298. return their nodes in document order. This fixes bugzilla #39079.
  299. 2003-10-15 Atsushi Enomoto <[email protected]>
  300. * Iterator.cs : DescendantIterator and FollowingIterator also should
  301. not MoveNext() after they reached to the end.
  302. 2003-10-13 Atsushi Enomoto <[email protected]>
  303. * Iterator.cs : Fixed UnionIterator who ignores document order.
  304. Fixed SlashIterator whose MoveNext() should finish at its end.
  305. 2003-09-27 Ben Maurer <[email protected]>
  306. * Iterator.cs, Expression.cs, XPathNavigator.cs: In AxisIterator
  307. use NameTable so we dont call strcmp.
  308. 2003-09-27 Ben Maurer <[email protected]>
  309. * DefaultContext.cs (translate): translate ("abc", "c", "") = "ab"
  310. not "abc".
  311. * Iterator.cs, Expression.cs: All axes are
  312. SimpleIterators. SimpleIterators are gaurenteed to give the same
  313. XPathNavigator in Current. Make AxisIterator take a
  314. SimpleIterator, not any old BaseIterator. Will allow us to make
  315. NameTable optimizations and avoid quite a few strcmp's.
  316. 2003-09-24 Ben Maurer <[email protected]>
  317. * Expression.cs: make // work right, must use another slash itr.
  318. 2003-09-21 Ben Maurer <[email protected]>
  319. * Expression.cs: cant use $$ before assigned.
  320. 2003-09-21 Ben Maurer <[email protected]>
  321. * Expression.cs, Parser.jay, XPathNavigator.cs: api beautification.
  322. 2003-09-20 Ben Maurer <[email protected]>
  323. * Expression.cs: num != double.NaN does not work.
  324. 2003-09-19 Ben Maurer <[email protected]>
  325. * Expression.cs: in NodeTypeTest dont throw an exception if it is
  326. an unknown node type (allows for better Pattern debugging).
  327. 2003-09-17 Ben Maurer <[email protected]>
  328. * DefaultContext.cs: implement sum () and translate ().
  329. 2003-09-13 Ben Maurer <[email protected]>
  330. * XPathNavigator.cs: Make methods where you pass in the context,
  331. so that we dont have to clone expressions so much.
  332. 2003-09-06 Ben Maurer <[email protected]>
  333. * DefaultContext.cs, Expresssion.cs, Parser.jay: Rewrite so that
  334. system functions are actually expressions. Will allow for some
  335. nice optimizations.
  336. 2003-08-25 Ben Maurer <[email protected]>
  337. * XPathNavigator.cs: "Smart" behavior in Matches. Nice 8x speed
  338. improvement in the method (5ms/call -> .7 ms / call) measured by
  339. monodoc's rendering of N:System.
  340. * Expression.cs: Utility methods to support above.
  341. 2003-08-13 Piers Haken <[email protected]>
  342. * Iterator.cs:
  343. fix MergedIterator.Clone(), now clones other's iterators
  344. fix DescendantIterator.Clone(), now copies depth
  345. make iterator cloning constructors more type-specific
  346. 2003-08-01 Piers Haken <[email protected]>
  347. * Expression.cs: added NodeNamespaceTest
  348. * XPathNavigator.cs: implement Select* with namespaces
  349. 2003-07-31 Ben Maurer <[email protected]>
  350. * Iterator.cs: Allow creation of an EnumeratorIterator with an
  351. XmlNamespaceManager.
  352. 2003-07-31 Piers Haken <[email protected]>
  353. * Parser.jay:
  354. Nested predicates (uses ExprFilter instead)
  355. more type safety
  356. make grammar look more like w3c spec
  357. * Expression.cs:
  358. remove ExprStep, ExprPredicates
  359. NodeTest is now a NodeSet
  360. more type-safety
  361. * Iterator.cs:
  362. PredicateIterator now only takes a single predicate expression
  363. more type-safety
  364. * XPathNavigator.cs:
  365. simplified SelectTest
  366. * XPathException.cs:
  367. fixed indenting
  368. 2003-07-30 Duncan Mak <[email protected]>
  369. * XPathException.cs
  370. (GetObjectData):
  371. (Message): Added.
  372. 2003-07-29 Piers Haken <[email protected]>
  373. * DefaultContext.cs: 'local-name' returns String, not NodeSet!
  374. 2003-07-29 Piers Haken <[email protected]>
  375. * XPathNavigator.cs:
  376. * Expression.cs:
  377. add typesafe Evaluate* methods
  378. 2003-07-29 Piers Haken <[email protected]>
  379. * DefaultContext.cs: fix 'substring-after'
  380. 2003-07-29 Piers Haken <[email protected]>
  381. * Iterator.cs: fix PredicateIterator.CurrentPosition bug (it wasn't incrementing)
  382. 2003-07-29 Ben Maurer <[email protected]>
  383. * Iterator.cs: dont throw exceptions on tostring ()
  384. 2003-07-28 Piers Haken <[email protected]>
  385. * DefaultContext.cs: better handling of null argument lists
  386. * XPathNavigator.cs: implement ComparePosition
  387. 2003-07-28 Piers Haken <[email protected]>
  388. * Expression.cs: boolean operators: handle comparing .Any better
  389. 2003-07-28 Piers Haken <[email protected]>
  390. * DefaultContext.cs: count() should return a double
  391. * Expression.cs: better support for handling non-double numbers
  392. 2003-07-28 Piers Haken <[email protected]>
  393. * DefaultContext.cs: better function param matching
  394. 2003-07-27 Piers Haken <[email protected]>
  395. * Expression.cs:
  396. * DefaultContext.cs:
  397. catch FormatExceptions while parsing numbers
  398. 2003-07-27 Piers Haken <[email protected]>
  399. * Expression.cs:
  400. fix case sorting order
  401. allow EvaluateNumber to take XPathResultType.Any
  402. 2003-07-27 Piers Haken <[email protected]>
  403. * Expression.cs:
  404. * Tokenizer.cs:
  405. don't pass null to XmlQualifiedName constructor
  406. 2003-07-27 Piers Haken <[email protected]>
  407. * DefaultContext.cs: allow 'concat' to take arbitrary-typed arguments (spec?)
  408. 2003-07-27 Piers Haken <[email protected]>
  409. * Expression.cs: allow EvaluateNodeSet to take XPathResultType.Any
  410. 2003-07-26 Piers Haken <[email protected]>
  411. * Expression.cs: fix function evaluation with ambigous argument types
  412. * XPathNavigator.cs: fix silly null reference bug
  413. 2003-07-26 Piers Haken <[email protected]>
  414. * Iterator.cs:
  415. * DefaultContext.cs:
  416. ArrayListIterator->EnumeratorIterator
  417. * Expression.cs: add sorting support
  418. 2003-07-26 Piers Haken <[email protected]>
  419. * Tokenizer.cs:
  420. * Parser.jay:
  421. move QName parsing into tokenizer
  422. * Expression.cs:
  423. fix evaluating XPathResultType.Any
  424. fix ExprDiv.ToString()
  425. fix NodeTypeTest.ToString() (for namespace axis)
  426. 2003-07-25 Piers Haken <[email protected]>
  427. * Expression.cs: return clone of $var evaluation
  428. 2003-07-26 Piers Haken <[email protected]>
  429. * Iterator.cs: add setter for NamespaceManager
  430. * XPathNavigator.cs: propagate NamespaceManager from context on Evaluate
  431. * Expression.cs: fix func/var exception strings
  432. 2003-07-25 Piers Haken <[email protected]>
  433. * Expression.cs: implement ExprFilter.Evaluate
  434. 2003-07-25 Piers Haken <[email protected]>
  435. * Expression.cs: implement ExprVariable.Evaluate
  436. 2003-07-24 Ben Maurer <[email protected]>
  437. * DefaultContext.cs: implement lang ()
  438. 2003-07-24 Piers Haken <[email protected]>
  439. * Parser.jay:
  440. * Expression.cs:
  441. allow ExprUNION to take non-nodeset (eg, $var) arguments
  442. 2003-07-24 Piers Haken <[email protected]>
  443. * Tokenizer.cs: fix variable references
  444. * Parser.jay:
  445. * Expression.cs:
  446. * XPathNavigator.cs:
  447. use XmlQualifiedName
  448. 2003-06-30 Atsushi Enomoto <[email protected]>
  449. * XPathDocument.cs : removed Driver class and restored authors' name
  450. (though it is completely rewrote).
  451. 2003-06-30 Atsushi Enomoto <[email protected]>
  452. * XPathDocument.cs : Replaced existing stub class with real
  453. XPathDocument implementation.
  454. 2003-04-28 Piers Haken <[email protected]>
  455. * Parser.jay, Tokenizer.cs: more compliant lexical parsing of ambiguous tokens
  456. 2003-03-07 Piers Haken <[email protected]>
  457. * Tokenizer.cs: allow '.'s in NCNames
  458. 2003-03-07 Piers Haken <[email protected]>
  459. * Exression.cs:
  460. * DefaultContext.cs:
  461. fixed function argument resolution
  462. 2003-02-09 Piers Haken <[email protected]>
  463. * XPathNavigator.cs:
  464. * Iterator.cs:
  465. * Expression.cs: fix namespace handling
  466. 2003-01-04 Piers Haken <[email protected]>
  467. * Parser.*: Remove extraneous "using" that was stopping the build. Permanently thisi time ;-)
  468. 2003-02-02 Piers Haken <[email protected]>
  469. * Parser.jay: add token names
  470. * Tokenizer.cs: fix NCName tokenization
  471. 2003-01-02 Atsushi Enomoto <[email protected]>
  472. * Tokenizer.cs : Fixed ParseIdentifier to allow digits.
  473. (It should be a temporary fix.)
  474. 2002-09-22 Nick Drochak <[email protected]>
  475. * Parser.cs: Remove extraneous "using" that was stopping the build.
  476. 2002-09-21 Piers Haken <[email protected]>
  477. * XPathException: implementation
  478. * Expression.cs:
  479. * Iterator.cs:
  480. * Parser.jay:
  481. * Tokenizer.jay:
  482. * XPathNavigator.jay:
  483. use XPathException.
  484. 2002-09-13 Gonzalo Paniagua Javier <[email protected]>
  485. * Parser.cs: commented out non-existent namespace (it compiles fine
  486. with mcs because of a bug that is already on bugzilla).
  487. 2002-09-12 Piers Haken <[email protected]>
  488. * Tokenizer.cs: fix parsing numbers that start with '.'
  489. * DefaultContext.cs: use MS-compatible formatting of doubles
  490. 2002-09-12 Piers Haken <[email protected]>
  491. * Iterator.cs: added NullIterator to handle unspecified contexts
  492. * XPathNavigator.cs: use NullIterator insted of SelfIterator when context is unspecified.
  493. * XPathNodeIterator.cs: change default _count to -1 to prevent recalculations for NullIterators
  494. 2002-09-12 Piers Haken <[email protected]>
  495. * Expression.cs, Parser.jay: allow ExprSLASH to take a generic expression as its left argument.
  496. * Iterator.cs: fix SlashIterator.Clone() when _iterRight is null.
  497. * DefaultContext.cs: fix id() return type.
  498. 2002-09-03 Gonzalo Paniagua Javier <[email protected]>
  499. * DefaultContext.cs: fixed bug #28840.
  500. * Expression.cs: added FIXME.
  501. 2002-08-17 Jason Diamond <[email protected]>
  502. * XPathNavigator.cs: Fixed matching on patterns that look like
  503. absolute XPath expressions.
  504. 2002-08-17 Jason Diamond <[email protected]>
  505. * XPathNavigator.cs: Added naive (but working) implementation of
  506. Matches.
  507. 2002-07-31 Piers Haken <[email protected]>
  508. * XPathDocument.cs: simple, XmlDocument-based implementation
  509. 2002-07-25 Piers Haken <[email protected]>
  510. * DefaultContext.cs: implement XPathFunctionName 'name()' function.
  511. 2002-07-17 Piers Haken <[email protected]>
  512. * DefaultContext.cs: implement 'string-length()', 'normalize-space()'
  513. * Parser.jay: remove redundant production
  514. * Expression.cs: add switches for debugging under VS.NET
  515. 2002-07-17 Piers Haken <[email protected]>
  516. * Expression.cs: implement nodeset/nodeset comparisons (non-optimal)
  517. 2002-07-15 Piers Haken <[email protected]>
  518. * Iterator.cs:
  519. - rename UnionIterator to MergedIterator,
  520. - create new UnionIterator to implment uniqueness for '|' operator
  521. - fix position bug in ArrayListIterator.Clone()
  522. * Expression.cs: use new UnionIterator constructor syntax
  523. 2002-07-12 Piers Haken <[email protected]>
  524. * Iterator.cs: PredicateIterator: handle numeric predicates
  525. * Parser.jay: add some debugging support: yyparseDebug
  526. * Tokenizer.cs: cleanup, include '-' chars in identifier tokens
  527. 2002-06-29 Piers Haken <[email protected]>
  528. * Expression.cs:
  529. - remove dead code
  530. - NodeTest uses XPathResultType instead of internal NodeTestTypes enum
  531. - remove NodeTestTypes enum
  532. - remove NodeTestTypeAny (functionality provided by base now)
  533. - fix ExprStep to handle wildcard QNames
  534. * Parser.jay:
  535. - moved to Mono.Xml.XPath namespace
  536. - use XPathResultType
  537. - handle wildcard QNames
  538. * Tokenizer.cs: moved to Mono.Xml.XPath namespace
  539. * XPathNavigator.cs: implement
  540. - IsDescendant
  541. - SelectAncestors
  542. - SelectDescendants
  543. - SelectChildren
  544. * XPathResultType.cs: fix enum values
  545. 2002-06-24 Jason Diamond <[email protected]>
  546. * XPathScanner.cs: Removed.
  547. 2002-06-24 Dick Porter <[email protected]>
  548. * XmlCaseOrder.cs: Fix namespace
  549. 2002-06-23 Piers Haken <[email protected]>
  550. * DefaultContext.cs: implemented XPathFUnctionId
  551. * Iterator.cs: new ArrayListIterator for id() support
  552. 2002-06-23 Piers Haken <[email protected]>
  553. * XPathNavigator.cs: implement:
  554. - Compile
  555. - Evaluate
  556. - Clone
  557. - Select
  558. - ToString
  559. - some forwarding methods
  560. * XPathNodeIterator: implement caching Count
  561. * Tokenizer.cs: new XPath tokenizer
  562. * Parser.jay: new XPath grammar
  563. * Parser.cs: new precompiled XPath grammar
  564. * Expression.cs: new XPath expression objects
  565. * Iterator.cs: new XPath result/context objects
  566. * DefaultContext.cs: new XPath function binding context
  567. 2002-05-08 Tim Coleman <[email protected]>
  568. * XPathDocument.cs:
  569. * XPathException.cs: New stub files added.
  570. 2002-04-12 Duncan Mak <[email protected]>
  571. * XmlCaseOrder.cs: Moved to here from System.Xml.
  572. 2002-03-26 Jason Diamond <[email protected]>
  573. * XPathScanner.cs: Now handles name tests with wildacards. Abbreviated
  574. steps. Both absolution and relative abbreviated location paths.
  575. 2002-03-25 Jason Diamond <[email protected]>
  576. * XPathScanner.cs: Added new file. This class is supposed to be internal
  577. but that would make it impossible to test.
  578. 2002-03-08 Duncan Mak <[email protected]>
  579. * XPathNamespaceScope.cs:
  580. * XPathNodeType.cs:
  581. * XPathResultType.cs:
  582. * XmlDataType.cs:
  583. * XmlSortOrder.cs: Used EnumCheck and realigned elements to be compatible with MS
  584. implementation. XPathResultType is interesting as EnumCheck does
  585. not show the Navigator element, but shows the String element twice.
  586. 2002-03-08 Jason Diamond <[email protected]>
  587. * XmlDataType.cs, XmlSortOrder.cs, XPathNodeType.cs: Added files.
  588. 2002-03-06 Jason Diamond <[email protected]>
  589. * ChangeLog: Added to this directory.
  590. * XPathExpression.cs, XPathNamespaceScope.cs, XPathNodeIterator.cs,
  591. XPathResultType.cs: New files.
  592. * XPathNavigator.cs: Stubbed out all properties and methods.