2005-01-31 Zoltan Varga <vargaz@freemail.hu>
[mono.git] / mcs / class / System.Data / System.Data / ChangeLog
index d84e2bef046e812fe8ca95a0de5b63dec9e21a3e..f8241bca8551f1dee9a58c15bd328225ee23d9e0 100644 (file)
@@ -1,3 +1,277 @@
+2005-01-31  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataView.cs :some interface implementations.
+
+2005-01-28  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataView.cs : Add to table only when the row is not in the table.
+
+2005-01-28  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataView.cs : implemented FindRows() (btw we should not use
+         DataTable since there are detached rows by AddNew().)
+
+2005-01-28  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataView.cs :
+         Code cleanup: privatify some members, remove unused methods.
+         Some event-based invocation methods should not raise NotImplemented.
+
+2005-01-28  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataSet.cs : ReadXml() became closer to MS behavior, being hacky.
+
+2005-01-28  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * XmlSchemaDataImporter.cs : empty element is not regarded as a column.
+
+2005-01-28  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * UniqueConstraint.cs : mostly reverted the previous patch + check
+         IsPrimaryKey before validation.
+
+2005-01-28  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataView.cs : Fixed duplicate insertion to Hashtable.
+       * UniqueConstraint.cs : Unique constrained pair of columns could be
+         nullable.
+
+2005-01-27  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataView.cs :
+         Don't do anything for Sort/ApplyDefaultSort/RowFilter/RowStateFilter
+         when the same value is being set.
+         Examined UpdateIndex() and marked FIXME where MS does not invoke it.
+         Removed unused OnColumnChanged().
+         Now store rowViewPool and reuse DataRowView objects.
+         Optimized UpdateIndex() - avoid ArrayList. Avoid Haashtable.Rehash().
+
+2005-01-27  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataViewSettings.cs : no MonoTODO anymore.
+       * DataViewManager.cs : pass itself to new DataView() (new ctor).
+       * DataRowView.cs : GetHashCode() returns its Row's hash.
+       * DataTablePropertyDescriptor.cs : use new ctor().
+       * DataView.cs : added new ctor()s that accept DataViewManager.
+
+2005-01-27  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataView.cs, DataRowView.cs : AddNew() should not add the row to table
+         (it is still detached). So handle those rows differntly.
+         CancelEdit(), EndEdit() and Delete() propagates those events to
+         DataView (and handle row collection).
+         Eliminate "throw new Exception()".
+         Don't catch all the exception thrown in ListChanged event.
+       * DataTable.cs : made RowSorter as internal and use it in DataView.
+         no need to pass DataRow[] to .ctor().
+
+2005-01-27  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataTable.cs : don't create DefaultView unless it is required. It
+         significantly improves performance. (i.e. DataView perf. is sick ;-)
+
+2005-01-27  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataViewSetting.cs,
+         DataViewSettingCollection.cs,
+         DataViewManager.cs : implemented basic members.
+
+2005-01-26  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * Node.cs, DataColumnPropertyDescriptor.cs, DataTable.cs :
+         Eliminate "throw new Exception".
+
+2005-01-25  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataRow.cs : (set_Item) RowNotInTableExeption check should be done
+         regardless of index existence.
+
+2005-01-25  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataTable.cs : use new IExpression.EvalBoolean() to avoid extraneous
+         boxing.
+
+2005-01-25  Sureshkumar T  <tsureshkumar@novell.com>
+
+       * DataTable.cs: ImportRow :Do not add to rows collection if the
+       import row is in detached state.
+
+2005-01-25  Sureshkumar T  <tsureshkumar@novell.com>
+
+       * DataRow.cs: CopyValuesToRow : set the column value with the
+       default version of the given row.
+       * DataTable.cs: ImportRow: Copy values before adding row.
+       * DataSet.cs: AddChangedRow: Add the row to the table after
+       copying values.
+       
+       Fixes bug #67317. Patch by Ankit Jain.
+
+2005-01-25  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataRowView.cs : Fixed IsEdit to reflect correct status of DataRow.
+       * DataRow.cs : Expose editing status internally.
+
+2005-01-25  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataView.cs : missing attributes.
+
+2005-01-24  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataRowView.cs : implemented CreateChildView().
+
+2005-01-24  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataTable.cs, DataView.cs :
+         Optimized DataView to compile only once RowFilter and Sort when 
+         those properties are set. To make it possible, extracted 
+         SortableColumn out of DataTable and added internal DataTable.Select()
+         that accepts precompiled IExpression and SortableColumns[].
+
+2005-01-24  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataColumn.cs : set_MaxLength is not allowed when it is mapped to
+         SimpleContent. (However, it is weird but it never fails when we set
+         ColumnMapping = MappingType.SimpleContent when we fhave MaxLength.)
+
+2005-01-21  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataRow.cs : more Current -> Default fixes. Check if it should throw
+         VersionNotFoundException. Patch by Ankit Jain.
+
+2005-01-21  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataRow.cs : Default selects the right version for the current
+         state of the row. Current is not always available. Also change
+         that for GetParentRow(). Patch by Ankit Jain.
+
+2005-01-21  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataTable.cs : CopyColumn() should copy AutoIncrement after
+         DefaultValue, or it will raise an error in some cases.
+
+2005-01-20  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * ConstraintCollection.cs : Add() should throw ArgumentException when
+         the argument constraint fails validation.
+         DataTable.cs : set_PrimaryKey should throw ArgumentException when
+         the argument contains constraints which fail validation.
+
+2005-01-19  Sureshkumar T  <tsureshkumar@novell.com>
+
+       * DataRelationCollection.cs: 
+
+       Method Remove : Donot throw exception if DataRelation argument is
+       null in DataRelationCollection.Remove method.
+
+       Method RemoveAt : Exception should be IndexOutOfRangeException if
+       row index is not in list range.
+
+       Fixes nunit failures DataRelationCollection.Remove and
+       DataRelationCollection.RemoveAt.
+
+2005-01-19  Sureshkumar T  <tsureshkumar@novell.com>   
+
+       * ConstraintCollection.cs: Donot throw exception if constraints
+       are null in AddRange method. Check for null before using the
+       argument.
+
+       fixes bug #69381.
+
+2004-01-19  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * XmlDataInferenceLoader.cs,
+         XmlDataReader.cs : Check if the XmlReader (node) represents DataSet
+         or a table, reusing code block in XmlDataInferenceLoader.
+         This fixes bug #60118.
+
+2004-01-19  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * XmlDiffLoader.cs : Ankit Jain <radical@imt.ac.in> has a conflicting
+         patches and some good catches. Some attributes should be skipped,
+         and loaded value must be typed.
+
+2004-01-19  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * XmlConstants.cs,
+         XmlDataInferenceLoader.cs, 
+         XmlDataReader.cs : use common const for http://www.w3.org/2000/xmlns/.
+       * XmlDiffLoader.cs : It was not handling attributes. Fixed bug #70961.
+
+2005-01-18  Sureshkumar T  <tsureshkumar@novell.com>
+
+       Fix for bug #66838. This patch is submitted by "Ankit Jain"
+       <radical@corewars.org> and refactored.
+
+       * DataRow.cs: Allows to set a parent row even if the row is in
+       detached state.
+
+       * DataRelation.cs: method "UpdateConstraints" is added to check
+       and create missing keys when adding a relation. This is refactored
+       approach from DataRelationCollection.Add method.
+
+       * DataRelationCollection.cs: AddCore methods of all relation types
+       are synchronized. A Check for existing constraints is
+       done. Relation is added to the list only if all checks are passed.
+
+2004-01-18  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataColumnCollection.cs : Clear() throws ArgumentException that
+         wraps thrown innerException.
+       * XmlSchemaDataImporter.cs : removed FIXMEs.
+
+2004-01-12  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataSet.cs : When serializing DataTable, BuildSchema() is passed
+         null relation collections.
+         Quick fix for XmlSerializer deserialization. It does not require
+         XML Schema included.
+
+2004-01-11  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataSet.cs,
+         CustomDataClassGenerator.cs :
+         In DataSet class, IXmlSerializable.GetSchema() returns null.
+         In strongly-typed class, it returns schema.
+
+2004-01-07  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * XmlDataInferenceLoader.cs : test driver class should be excluded.
+
+2004-12-01  Miguel de Icaza  <miguel@ximian.com>
+
+       * DataView.cs: Patch from Marc Haisenko that ensures that rowCache
+       is never null.
+
+2004-11-10  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * CustomDataClassGenerator.cs : generated foreign key constraint
+         construction code was creating empty child columns and thus it
+         was invalid. This fixes bug #69276 (patch by Martin Voelkle).
+
+2004-11-02  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * CustomDataClassGenerator.cs : custom DataTable ctor should call
+         InitializeFields(), and those DataColumns created by that method
+         should take data type. This should fix bug #68972.
+
+2004-10-15  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataSet.cs : Also clear UnhandledAttributes ArrayList before 
+         generating next attribute column schema. This fixes bug #68432.
+
+2004-10-14 Umadevi S <sumadevi@novell.com>
+        * DataTable.cs : Corrected the Clone method to use  Activator.CreateInstance so that the
+        correct subclass is returned. This fixes bug #67631
+                                                                                        
+2004-10-14 Umadevi S <sumadevi@novell.com>
+       * DataSet.cs : Corrected the Clone method to use  Activator.CreateInstance so that the  
+       correct subclass is returned. This fixes bug #67627
+
+2004-10-13  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataSet.cs : clear UnhandledAttributes ArrayList before generating
+         next element column schema. This fixes bug #68256.
+
 2004-10-12  Atsushi Enomoto  <atsushi@ximian.com>
 
        * DataSet.cs : now xs:schema contains xmlns="".
          DataColumn.ReadOnly was not handled. This fixes bug #68005.
          Attribute defaultValue was not handled too.
 
-2004-10-08  Atsushi Enomoto  <atsushi@ximian.com>
-
-       * DataSet.cs : Yesterday's fix was different and broke the build :(
-
 2004-10-07  Atsushi Enomoto  <atsushi@ximian.com>
 
        * DataSet.cs :
          @blah. This fixes bug #66366.
 
 2004-09-28 Umadevi S <sumadevi@novell.com>
-        * DataRow.cs - checked for Enforceconstraints, while using indices to search for related rows
+       * DataRow.cs - checked for Enforceconstraints, while using indices to search for related rows
 
 2004-09-24  Sureshkumar T  <tsureshkumar@novell.com>
 
        * DataSet.cs : Don't check constraints for dataset clear
-       * DataRowCollection.cs : check for EnforceConstraints flag
+       * DataRowCollection.cs : check for EnforceConstraints flag 
        before checking foriegn key constraints in Clear method
        * DataTable.cs : Redundant checking removed in Clear method as it is
-       checked in DataRowCollection.Clear method.
-       
-2004-09-21  Sureshkumar T  <tsureshkumar@novell.com>
+       checked in DataRowCollection.Clear method. 
+
+
+2004-09-19  Sureshkumar T <tsureshkumar@novell.com>
+       * DataRow.cs : while deserialization of dataset, adding a current row precedes the original row.
+                      hence, adding a row cache is necessary if the original row happens to be current.
+                      fixed bug #63097
+
+2004-08-23  Martin Baulig  <martin@ximian.com>
+
+       * XmlDataInferenceLoader.cs (Driver): Make this class internal,
+       not public.
 
-       * DataRow.cs: Added a new original row cache, if the current row happens
-       to be the original row. fixed bug #63097
+2004-08-18 Umadevi S <sumadevi@novell.com>
+       * DataView.cs - Completed most of the event handling. 
+       Thanks to Punit Todi <punit_todi@da-iict.org> for implementing most of it.
+       Thanks to Boris Kirzner <borisk@mainsoft.com> for commenting and suggesting changes to the implementation.
+       * DataTable.cs - Changed Access modifiers of class/methods since it was used by DataView.
 
 2004-08-06  Atsushi Enomoto  <atsushi@ximian.com>
 
        * DataSet.cs (Copy, Clone): The Relations of the DataSet were not copy.
        (HasChanges, Reset): Imlementation.
        
-       * DataTable.cs (HasErrors): There is no flag for errors, instead the table ask her row if they have any errors.\r
+       * DataTable.cs (HasErrors): There is no flag for errors, instead the table ask her row if they have any errors.
        This is because the we do not no when to turn off the flag.
        (Locale): Changing implementation to behave like ADO.NET.
        (AcceptChanges): Fix bug.
        (HasVersion): Added special treatment for special RowState.
        (CollectionChanged): More checks to avoid NullReferenceException.
        
-       * DataRowCollection.cs (Remove): Fix a bug.\r
+       * DataRowCollection.cs (Remove): Fix a bug.
 
 
 2003-10-01  Duncan Mak  <duncan@ximian.com>