Version 5.2.5 - 11/14/2008
- fixed problem with package registration that kept the DDEX provider from working (bug #40726)

Version 5.2.4 - 11/11/2008  (Happy Birthday to me!)
- fixed web providers autogenerateschema option where it would fail if no schema is
  present at all (bug #39072)
- backported fix for lingering problem related to bug #37239.  If two columns had the same name but
  different case then an exception would be thrown.  
- fixed stored procedure parameter parsing when used inside server explorer.  (bug #39252)
- fixed time data type so that negative values are handled properly (bug #39275)
- added runtime check for the mono platform to our Membership provider.  The mono runtime
  as of 1.9.1 did not support the methods needed for hashed passwords (bug #38895)
- fixed problem where negative time values with a zero hour would return as postive
  values (bug #39294)  
- fixed problem where using a stored procedure with parameters with a table adapter
  was no longer working after our parameter schema changes (bug #39252)  
- fixed problem with profile provider where INSERT .. ON DUPLICATE UPDATE syntax would not
  work correctly with some older server versions (bug #39330)  
- Defaulting max allowed packet to 1024 to account for the possible case where the
  value doesn't come in as a server variable  
- fixed bug #39728 by making MySqlConnectionStringBuilder.GetConnectionString an internal method.
  It should not have been publicly available anyway.  It is used internally by the 
  MySqlConnection.ConnectionString property
- implemented Disposable pattern on MySqlTransaction class so including one in a using statement
  and then not calling commit will cause a rollback when the using exits (bug #39817)
- fixed MySqlScript object so that it handles scripts with user variables
- fixed bug where specifying 'functions return string=yes' would cause strings to be returned
  using the 'binary' charset which would not properly render some characters.  Now the 
  connection character set is used. (bug #40076)  
- fixed problem that caused in use connection strings to be modified when a pooled connection
  timed out and was cancelled.  (bug #40091)
- fixed problem where using respect binary flags would not use the connection char set
  and therefore return strings with a bad encoding.
- fixed bug where provider was attempting to use the new parameters I_S view on servers
  that didn't have it (bug #40382)
- fixed problem where CharSetMap.GetDefaultCollation and CharSetMap.GetMaxLengths
  might have a thread sync issue on high load systems.  They were not locking
  the static collections there were initializing. (bug #40231)  
- added GetSByte to the reader for returning tinyint columns (bug #40571)
  
Version 5.2.3 - 8/14/08
- Increased the speed of MySqlDataReader.GetOrdinal dramatically by using a couple
  of hashes for lookups
- Fixed problem where some tables that support the web providers used the latin1
  character set instead of the database default.  (bug #36444) 
- Changed how the procedure schema collection is retrieved.  If 'use procedure bodies=true'
  then we select on the mysql.proc table directly as this is up to 50x faster than our current
  IS implementation.  If 'use procedure bodies=false', then the IS collection is queried.
  (bug #36694)
- Fixed problem with our GetOrdinal speedup where we would attempt to add an already existing
  key to a hash when a resultset had more than 1 column with the same name. (bug #37239)    
- small fix to how we were allowing in/out and out parameters to slide through parameter 
  serialization.  Before we were setting the AllowUserVariables connection setting but that 
  had the unfortunate side effect of setting the value for all connections that shared that 
  connection string.  This way we isolate it just to our particular command.  
  This may fix bug #37104    
- Fixed documentation surrounding use of ? vs @ for parameters (bug #37349)
- Reduced network traffic for the normal case where the web provider schema is up
  to date (bug #37469)
- Improved error reporting when a timeout occurs.  It no longer uses a message like 
  'reading from stream failed'.  (bug #38119)
- fixed problem where adding a non-existent user to a role would not auto-create the 
  user record (bug #38243)
- moved string escaping routine from the MySqlString class to the MySqlHelper class
  and made it public and static.  (bug #36205)
- Fixed problem where column metadata was not being read with the correct characterset
  (bug #38721) 
- Fixed problem where the uninstall was not cleaning up the state files (bug #38534)
- Added 'Functions Return String' connection string option  
  
Version 5.2.2 - 
- Fixed profile provider that would throw an exception if you were updating
  a profile that already existed.
- Fixed problem where new parameter code prevented stored procedures from being
  altered in Visual Studio (bug #34940)
- Fixed problem where the TableAdapter wizard was no longer able to generate commands
  using stored procedures because of our change to using @ instead of ? (bug #34941)
- Fixed problem in datagrid code related to creating a new table.  This problem may
  have been introduced with .NET 2.0 SP1.   
- Fixed guid type so that a null value is still returned as guid type (bug #35041)
- Added support for using the new PARAMETERS I_S view when running against
  a 6.0 server    
- Fixed bug with the membership provider where the min non alpha numeric option
  was not working correctly.    
- Fixed bug where calling GetPassword on a membership user when the password answer
  is null would cause an exception (bug #35332)
- Fixed bug where retrieving passwords that are encrypted was not returning proper
  passwords (bug #35336)    
- Fixed problem with profile provider where properties that were specified without
  a given type could not be retrieved properly (bug #36000)  
- Implemented interactive session connection string option     
- The procedure parameters schema collection has been altered to match what is coming
  with MySQL 6.0.  Some fields have been removed and others combined.  Please review
  your application for incompatibilities.
- Removed some unnecessary locking from the pool manager and also reworked the pooling
  code to not use a semaphore (bug #34001)

    
Version 5.2.1 - 2/27/2008
- Tons of fixes in providers.  The actually work now.  :)
- Fixed new parameter handling code so that procedures and functions now work 
  (bug #34699)
- Fixed problem with Visual Studio 2008 integration that caused popup menus on
  server explorer nodes to not function
- Fixed web providers so that they don't attempt to check their schema or cache
  their application id if the connection string has not been set. (bug #34451)
- Fixed installer that did not install the DDEX provider binary if 
  the Visual Studio 2005 component was not selected. (bug #34674)
- Fixed password validation logic for creating users and changing passwords.
  It actually works now.  (bug #34792)

Version 5.2 - 2/11/2008
. Added ClearPool and ClearAllPools features
. DDEX provider now works under Visual Studio 2008	
. Added support for DbDataAdapter UpdateBatchSize.  Batching is fully supported
  including collapsing inserts down into the multi-value form if possible.
. Added MySqlScript class for executing scripts against a database.
. Marked connection string option 'Use Old Syntax' as obsolete and changed code to 
  allow both @ and ? as paramter markers.
. Finished MySqlBulkLoader class
. BINARY(16) columns are now returned as Guid objects
. Moved code that creates the PerfMon stuff from the assemblies to the Wix installer
. Added Allow User Variables connection string option so that users can use user variables
  without getting missing parameter exceptions
  
Version 5.1.7
 - Fixed problem with DDEX provider that could sometimes prevent table altering when working with
   4.1 servers (bug #30603)
 - Fixed problem with pooling code where connections pooled from the pool were added
   twice to the in use pool.  This would cause a semaphore full exception
   when an attempt is made to release them back to the pool (bug #36688)
 - Reversed order of Datetime and DateTime enums for MySqlDbType so that VB users won't get
   autocorrection to Datetime (bug #37406)
 - Uncommented access denied error enumeration value (bug #37398)
 - Improved documentation concerning autoincrement columns and the DataColumn class (bug #37350)
 - Fixed problem where executing a command that results in a fatal exception would not
   close the connection.  (bug #37991)
 - Fixed problem where executing a command with a null connection object would result in
   a null reference exception instead of an InvalidOp (bug #38276)
   
Version 5.1.6 
 - Fixed problem where parameters lists were not showing when you tried to alter a routine 
   in server explorer.  (bug #34359)
 - Fixed a problem in procedure cache where it was possible to get into a race condition
   and cause a memory leak (bug #34338)
 - Fixed problem where attempting to use an isolation level other than the default with
   a transaction scope would use the default instead (bug #34448)
 - Fixed problem that causes the TableAdapter wizard to only generate insert statements.
   The problem was that our code to retrieve index columns was broken. (bug #31338)
 - Fixed problem with connections staying open after being used with SqlDataSource.
   The problem was that we were not returning an enumerator for our reader with the
   closeReader option set to true when we were supposed to.  (Bug #34460)
 - Fixed problem where the bit data type would continue to return null values
   once it saw a null value in a previous row (bug #36313)      
 - Fixed problem with MembershipUser.GetPassword where attempting to retrieve a
   password on a user where password Q&A is not required would throw an exception (bug #36159)      
 - Fixed a problem with MembershipUser.GetNumberOfUsersOnline.  
   It actually works now  :) (bug #36157)
 - Fixed documentation that still stated that setting port to -1 was necessary for
   a named pipe connection (bug #35356)      
 - Fixed data type processing so that geometry fields are returned as binary.  (bug #36081)      
 - Fixed problem that kept our provider from showing up in the provider list when configuring
   a new connection from a SqlDataSource      
 - Fixed problem where setting the ConnectionString property of MySqlConnection to null
   would throw an exception (bug #35619)
             
Version 5.1.5 - 2/11/2008
  - Fixed problem with membership provider where FindUserByEmail would fail trying to add
    a second parameter with the same name as the first (bug #33347)
  - Fixed long standing problem with compression over a network.  It's now fast again. (bug #27865)    
  - Fixed nant compilation problem on mono (bug #33508)
  - Fixed problem where connection state reported through the state change handler was not
    showing Open (bug #34082)   
  - Incorporated some connection string cache optimizations sent to us by Maxim Mass (bug #34000)
  - Fixed problem with opening a connection that was previously closed by sudden server disconnection (bug #33909)   
  - Fixed code to yeild better exception when using different connection strings in a single transaction (bug #34204)   
  - Small bugfix and speed enhancement in Statement.TokenizeSql (bug #34220)
  - Added connection string option 'Treat Tiny As Boolean' so applications that expect TINYINT(1)
    to return an integer will not break (bug #34052)
   
Version 5.1.4 - 11/12/2007
  - Fixed issue where column name metadata was not using the charset given on the connection string
    (Bug #31185)
  - Fixed problem where closing the connection before the reader where the reader was
    opened with CloseConnection would cause a object disposed exception to be thrown
  - Fixed problem with installer where the installation would fail if the performance
    counter categories had already been removed for some reason      
  - Fixed problem with attempting to use a command with a connection that is not open.
    The problem was caused by the introduction of the internal method SoftClosed that is
    used with transactions.  (Bug #31262)      
  - Fixed problem where attempting to enlist in a distributed transaction would succeed
    even though Connector/Net doesn't currently support that. (Bug #31703)
  - Fixed problem with web providers not being usable on medium trust systems      
  - Fixed problem with installer where attempting to install over a failed uninstall could 
    leave multiple clients registered in machine.config.  (Bug #31731)      
  - Marked MySqlDbType.Datetime obsolete; replaced with DateTime (just corrected capitalization) (Bug #26344)
  - fixed code where we were returning bit(1) as boolean but mysql treats tinyint(1) as boolean
    (bug #27959)
  - Added the Default Command Timeout connection string option to allow DDEX users to set
    an initial command timeout for very large databases (bug #27958)      
      
Version 5.1.3 - 9/19/2007
  - Fixed problem with using a stored procedure that takes a parameter as a select routine
    for a TableAdapter wizard. (Bug #29098)
  - Fixed problem with creating users using hashed passwords when machineKey is set
    to AutoGenerate.  We now correctly throw an exception if you are requesting
    encrypted passwords but it works ok for hashed passwords. (Bug #29235)
  - Fixed problem with selecting users for roles in the web admin tool.  The problem was that
    we had a simple syntax error in our database lookup code. (Bug #29236)
  - Added AutoEnlist connection string option.  Setting it to false will prevent the connection
    from automatically enlisting in any current transaction    
  - Changed membership schema to allow null values for email.  This allows all the 
    overrides for Membership.CreateUser to work.    
  - Added 'Respect Binary Flags' connection string option to allow existing applications
    to select the old behavior of not always respecting the binary flags of a columns.
  - Added ability to use blobs to store true UTF-8 data (see help)
  - Help is now integrated into Visual Studio 2005 and includes content other than the API 
  - Fixed problem reported by user where MySqlMembershipProvider.GetUser was attempting to 
    reuse the connection to update a table while a reader was open on it.    
  - Fixed problem with membership schema where the password key column was not large enough  
  - Added feature where bit columns that have the value 0 or 1 are returned as bool
  - Added Foreign Key Columns metadata collection
  - Reworked how foreign key metadata is collected to make it more robust and faster
  - Changed DDEX provider to use the core providers schema routines for 
    foreign keys and foreign key columns
  - Fixed index and foreign key enumerators inside the DDEX provider to work
    with the new binary respect behavior of 5.1
  - Added code to implement better TransactionScope support.  This code is brand new and will be
    heavily refactored in 5.2. (bug #28709)
  - Fixed problem where connecting to pre-4.1 servers would result in a crash. This was caused
    by the Field object referring to metadata columns that are not populated on pre-4.1 servers.
    (bug #29476)
  - Commandbuilder now defaults ReturnGeneratedIdentifiers to true.  This means that autogenerated
    columns will be returned in the default case.
  - Exceptions generated during BeginExecuteReader and BeginExecuteNonQuery will now ben thrown
    once the End versions of those methods are called.

Version 5.1.2 - 6/12/2007
  - Fixed integration with the Website Administration Tool.  Before this fix, the test link
    was visible but did not work and  user management did not work.
  - Reintroduced code to properly return field values as byte[] when the binary flag is present.
    (See release notes)    
  - Fixed problem preventing the DataSet Designer or TableAdapter wizard from being
    able to generate insert, update, and delete statements. (Bug #26347)    
  - Fixed problem preventing use of stored procedures for insert, update, and
    delete statements in a table adapter.    
  - Fixed problem where text columns would not appear in the Visual Studio query builder (Bug #28437)	
	    
Version 5.1.1
  - Fixed password property on MySqlConnectionStringBuilder to use PasswordPropertyText 
    attribute.  This causes dots to show instead of actual password text.
  - Fixed problem with pooling on the compact framework.  It should work now.    
  - Install now calls VS setup only when VS integration is selected. (bug #28260)
  - MySqlRoleProvider.GetRolesForUser now works correctly (bug #28251)
  - Installer now adds a default connection string to machine.config.  This will prevent errors related to a missing 
    connection string.  You will need to override this value in your web.config files.    
  - Changed installer to only give option to install Visual Studio integration if Visual Studio 8 is installed

Version 5.1.0 - 5/1/2007

  - Added Membership and Role provider contributed by Sean Wright (thanks!)
  - Now compiles for .NET CF 2.0
  - Rewrote stored procedure parsing code using a new SQL tokenizer.  Really nasty
    procedures including nested comments are now supported.
  - GetSchema will now report objects relative to the currently selected database.
    What this means is that passing in null as a database restriction will report
    objects on the currently selected database only.
    
Version 5.0.10 - 
  - Fixed problem with pooling where a bogus host info combined with a pool with a minimum
    size > 0 can combine to create an exception.  The pool fails to create from the bogus
    host info but the driver finalizer code will still try to remove the driver from
    a non-existant pool.  (bug #36432)    
  - Fixed problem where supplying the connection reset config option can cause login to fail
    when there is room to make a new connection and the pool has no idle connections.    
  - Fixed MySqlConnectionStringBuilder to first remove old keyword settings when setting
    a value that was previously set (bug #37955)    
  - Fixed problem where executing a command that results in a fatal exception would not
    close the connection.  (bug #37991)
  - Fixed problem with byte and unsigned byte values writing more too many bytes when
    using prepared statements (bug #37968)      
  - Fixed writing of single and double values to write out the proper number of digits
    (bug #33322)
  - Fixed GetSchema to work properly when querying for a collection with non-English
    locale (bug #35459)
        
Version 5.0.9 - 4/14/08

  - Fixed problem where fields that were blobs but did not include the BLOB flag were treated
    as binary when they should have been treated as text.  (Bug #30233)    
  - Changed from using Array.Copy to Buffer.BlockCopy in MySqlDataReader.GetBytes.  This
    helps with memory usage as we expect the source and destination arrays to not be overlapping.
    (Bug #31090)
  - Fixed problem that prevented commands from being executed from the state change
    handler.  Not sure why you would want to do this but...  (bug #30964)
  - Fixed problem with connection string caching where our collection class was 
    using case insensitive semantics and this causes cases where a user orginally
    used the wrong case for a user id and then fixed it to still get access denied
    errors. (Bug #31433) 
  - improved the speed of load data local infile significantly   
  - fixed MySqlDateTime.ToString() to properly return the date value (Bug #32010)   
  - fixed problem where string parameters who have their size set after their value could cause exceptions
    (Bug #32094)  
  - fixed problem where old code was preventing creating parameter objects with non-input direction using
    just a constructor (Bug #32093)  
  - fixed problem where a syntax error in a set of batch statements could leave the data adapter in a state
    that appears hung (bug #31930)
  - fixed the MySqlException class to set the server error code in the Data[] hash so that 
    DbProviderFactory users can access the server error code (Bug #27436) 
  - fixed problem where changing the connection string of a connection to one that changes
    the parameter marker after the connection had been assigned to a command but before
    the connection is opened can cause parameters to not be found (bug #13991) 
  - added implementation of MySqlCommandBuilder methods QuoteIdentifier and UnquoteIdentifier
    (bug #35492)        
  - some fixed to cancel and timeout operations so that they are more dependable        
  - fixed problem where cloning a parameter that has not yet had its type set would yeild
    a cloned paramter that would no longer infer it's type from the value set        
            
Version 5.0.8   8/16/2007

  Bug #28706 Log messages are truncated  
  - Fixed a problem with compression over a network.  We were letting the inflate stream read
    directly from the network stream.  Under certain situations, two bytes were being left unread
    and this messed up our byte counts.  Now we are using a WeakReference to an internal buffer
    that we read the compressed data into before inflating. (Bug #28204)  
  - Fixed problem where we were not closing prepared statement handles
    when commands are disposed.
  - Fixed problem where any attempt to not read all the records returned
    from a select where each row of the select is greater than 1024 bytes
    would hang the driver.
  - Fixed problem where usage advisor warnings for unnecessary field conversions
    and not reading all rows of a resultset would output even if you
    did not request usage advisor warnings. (Bug #29124)
  - Changed behavior of ConnectionString property.  It now only returns the connection
    string given to it.  It will not attempt to track changes to the current
    database when the users uses the ChangeDatabase method. (Bug #29123)
  - Fixed problem with calling stored procedures in databases that have hyphens
    in their names.  We were not using backticks to quote the database and sproc name
    when querying for metadata. (Bug #29526)
  - Fixed problem where a statement that has parameters that is executed without
    defining those parameters would throw a System.FormatException rather than
    a MySqlException (bug #29312)    
  - Fixed problem where a command timing out just after it actually finished would cause
    an exception to be thrown on the command timeout thread which would then be seen
    as an unhandled exception. 
  - Fixed bug where Connecor/Net was hand building some date time patterns rather than using
    the patterns provided under CultureInfo.  This caused problems with some calendars that do
    not support the same ranges as Gregorian.  (Bug #29931)
  - Fixed problem where MySqlConnection.BeginTransaction checked the drivers
    status var before checking if the connection was open.  The result was that the
    driver could report an invalid condition on a previously opened connection.    
  - Fixed problem where an attempt to open a connection max pool size times while
    the server is down will prevent any further attempts due to the pool semaphore
    being full. (Bug #29409)    
  - Fixed some serious issues with command timeout and cancel that could present
    as exceptions about thread ownership.  The issue was that not all queries 
    cancel the same.  Some produce resultsets while others don't.  ExecuteReader
    had to be changed to check for this.
  - Fixed problem where date columns that appear in keys caused updates to 
    fail (bug #30077)
  - Added code to suppress finalizers for low level socket objects and then
    added a finalizer to the protocol object so pooled connections will get 
    closed on process exit    
  - Fixed problem where attempting to load a reader into a datatable using a table 
	with a multi-column primary key would result in multiple constraints being added
	to the datatable. No test case added to the 1.0 tree as loading a datatable
	with a reader is a .Net 2.0 thing. (Bug #30204)
  - Fixed the database schema collection so that it works on servers that are not properly
    respecting the lower_case_table_names setting.	
  - Moved installer to Inno Setup
          
Version 5.0.7 5/16/2007

  Bugs fixed
  ----------
  Bug #27269 MySqlConnection.Clone does not mimic SqlConnection.Clone behaviour 
  Bug #27289 Transaction is not rolledback when connection close 
  Bug #26147 "User Id" problem during connection creation 
  Bug #27240 Property value characterset not retrieved/fetched in conn wizard 
  Bug #25947 CreateFormat/CreateParameters Column of DataTypes collection incorrect for CHAR 
  Bug #27765 Logging does not work
  Bug #27679 MySqlCommandBuilder.DeriveParameters ignores UNSIGNED flag
  Bug #27668 FillSchema and Stored Proc with an out parameter
  Bug #28167 Poor performance building connection string (thanks Maxim!)
  Bug #26041 Connection Protocol Property Error in PropertyGrid Control
  Bug #26754 EnlistTransaction throws false MySqlExeption "Already enlisted"
  Bug #23342 Incorrect parsing of Datetime object for MySQL versions below 4.1
  
  Other changes
  -------------
  Installer now works if XML comments are found in machine.config
  GetSchema will now attempt to unquote identifiers passed in as restrictions
  The MySqlCommand object now properly clones the CommandType and CommandTimeout properties  
  
Version 5.0.6 3/21/2007

  Bugs fixed
  ----------
  Bug #27135 MySqlParameterCollection and parameters added with Insert Method 
  Bug #27253 Installer : Company info is different 
  Bug #27187 cmd.Parameters.RemoveAt("Id") will cause an error if the last item is requested   
  Bug #27093 Exception when using large values in IN UInt64 parameters 
  Bug #27221 describe SQL command returns all byte array on MySQL versions older than 4.1.15 
  Bug #26960 Connector .NET 5.0.5 / Visual Studio Plugin 1.1.2 
  
Version 5.0.5 3/5/2007

  Bugs fixed
  ----------
  Bug #25605 BINARY and VARBINARY is returned as a string 
  Bug #25569 UpdateRowSource.FirstReturnedRecord does not work 

Version 5.0.4 *unreleased*

  Bugs fixed
  ----------
  Bug #25443 ExecuteScalar() hangs when more than one bad result 
  Bug #24802 Error Handling 
  Bug #25614 After connection is closed, and opened again UTF-8 characters are not read well 
  Bug #25625 Crashes when calling with CommandType set to StoredProcedure 
  Bug #25458 Opening connection hangs 
  Bug #25651 SELECT does not work properly when WHERE contains UTF-8 characters   
  Bug #25726 MySqlConnection throws NullReferenceException and ArgumentNullException 
  Bug #25609 MySqlDataAdapter.FillSchema 
  Bug #25928 Invalid Registry Entries 
  Bug #25912 selecting negative time values gets wrong results 
  Bug #25906 Typo makes GetSchema with DataTypes collection throw an exception   
  Bug #25907 DataType Column of DataTypes collection does'nt contain the correct CLR Datatype   
  Bug #25950 DataSourceInformation collection contains incorrect values 
  Bug #26430 Will not install under Vista   
  Bug #26152 Opening a connection is really slow 
  Bug #24373 High CPU utilization when no idle connection 
  Bug #24957 MySql.Data.Types.MySqlConversionException is not marked as Serializable. 
  Bug #25603 Critial ConnectionPool Error in Connector.Net 5.03 
  Bug #26660 MySqlConnection.GetSchema fails with NullReferenceException for Foreign Keys 

  Other changes
  -------------
  Return parameters created with DeriveParameters now have the name RETURN_VALUE
  Fixed problem with parameter name hashing where the hashes were not getting updated
       or removed in certain situations.
  Fixed problem with calling stored functions when a return parameter was not given
  Fixed problem that prevented use of SchemaOnly or SingleRow command behaviors with
       sprocs or prepared statements
  Assembly now properly appears in the Visual Studio 2005 Add/Remove Reference dialog
  Added MySqlParameterCollection.AddWithValue and marked the Add(name, value) method as obsolete
  Added "Use Procedure Bodies" connection string option to allow calling procedures without
       using procedure metadata (if possible).
  Reverted behavior that required parameter names to start with the parameter marker.  We 
       apologize for this back and forth but we mistakenly changed the behavior to not
       match what SqlClient supports.  We now support using either syntax for adding
       parameters however we also respond exactly like SqlClient in that if you ask for the
       index of a parameter using a syntax different than you added the parameter, the result
       will be -1.
  
Version 5.0.3 12-31-2006

  Bugs fixed
  ----------
  Bug #23687 Deleting a connection to a disconnected server causes a failed assertion 
  Bug #24565 Inferring DbType fails when reusing commands and the first time the value is nul 
  Bug #24661 mysql-connector-net-5.0.2-beta Driver.IsTooOld() Error.... 
  Bug #23905 Stored procedure usages is not thread safe 
  Bug #25033 Exception raised/ HANG if no SELECT privileges granted for stored procedure call 
      [this is a correction;  a previous change log entry indicated that Connector/Net
       no longer required select privs on mysql database.  This is not true and select privs
       are required. This will be fixed when the server exposes procedure parameters via
       information schema.]
  Bug #25013 Return Value parameter not found 
  Bug #25151 Reading from the stream has failed Exception in MySQL Connector 5.0.2 
  Bug #22400 Nested transactions 

  Other changes
  -------------
  SSL now working.  [Thanks Alessandro Muzzetta]
  Fixed ViewColumns GetSchema collection
  Improved CommandBuilder.DeriveParameters to use the procedure cache if possible

Version 5.0.2 11-3-2006

  Bugs fixed
  ----------
  Bug #23268 System.FormatException when invoking procedure with ENUM input parameter 	
  Bug #23538 Exception thrown when GetSchemaTable is called and "fields" is null. 
  Bug #23245 Connector Net 5.01 Beta Installer produces Antivirus Error Message 
  Bug #23758 Unable to connect to any server - IPv6 related 
  Bug #22882 Registry key 'Global' access denied 
  Bug #18186 Problem with implementation of PreparedStatement  
  Bug #23657 Column names with accented characters were not parsed properly causing malformed column names in result sets.
  Bug #16126 Connector/NET did not work as a data source for the SqlDataSource object used by ASP.NET 2.0.
 
  Other changes
  -------------
  Increased speed of MySqlParameterCollection.IndexOf(string) orders of magnitude
  (parameter name lookups are now strict on use of parameter marker)
  Improved character set mappings
  Turned MySqlPoolManager into a static class and added a static ctor to
    avoid any race conditions related to initializing the hashtable.
    (A similar suggestion came in from a user)
  Added 'Ignore Prepare' connection string option for disabling prepared
    statements application-wide
  Added Installer class to provide custom install type procedures such as modifying
    machine.config
  A nicer exception is displayed if you have added a parameter without the parameter marker.
  Load Data Local InFile is working again         
         
Version 5.0.1 (Beta)

  Bugs fixed
  ----------
  Bug #21521 # Symbols not allowed in column/table names.    
  Bug #21874 MySqlException should derive from DbException         
  Bug #22042 mysql-connector-net-5.0.0-alpha BeginTransaction
  Bug #22452 MySql.Data.MySqlClient.MySqlException: 	 

  Other changes
  -------------
  Implemented simple local transactions
  Added overloaded methods in MySqlDataReader for getting a column value right from column name
  Replaced use of .NET 2.0 compression code with open source zlib library
  Fixed compression
  Fixed some problems with GetSchema and the Indexes and IndexColumns collections
  Fixed shared memory connections
  Implemented command canceling for MySQL 5.0.0 and higher
  Fixed problem with executing a Fill after a FillSchema
  Implemented CommandTimeout for non-batch queries
  Fixed socket create code related to IPv6 (thanks Mark!)
  Added foreign key support to GetSchema
  Fixed installer to add assembly to GAC and machine.config
    
Version 5.0.1 (Alpha)

  Bugs fixed
  ----------
  Bug #6214  	CommandText: Question mark in comment line is being parsed as a parameter [fixed]

  Other changes
  -------------
  Implemented Usage Advisor
  Added Async query methods
  Reimplemented PacketReader/PacketWriter support into MySqlStream class
  Added internal implemention of SHA1 so we don't have to distribute the OpenNetCF on mobile devices    	
  Added usage advisor warnings for requesting column values by the wrong type
  Reworked connection string classes to be simpler and faster
  Added procedure metadata caching
  Added perfmon hooks for stored procedure cache hits and misses    	
  Implemented MySqlConnectionBuilder class
  Implemented MySqlClientFactory class
  Implemented classes and interfaces for ADO.Net 2.0 support
  Replaced use of ICSharpCode with .NET 2.0 internal deflate support
  Refactored test suite to test all protocols in a single pass
  Completely refactored how column values are handled to avoid boxing in some cases
    	
Version 1.0.8 

  Other changes
  -------------
  Implemented a stored procedure cache
  Changed how stored procedure metadata is retrieved to allow users without select privs
    on mysql.proc to use them

  Bugs fixed or addressed
  -----------------------
  Bug #16659 Can't use double quotation marks(") as password access server by Connector/NET [fixed]
  Bug #17375 CommandBuilder ignores Unsigned flag at Parameter creation [fixed]
  Bug #17749 There is no char type in MySqlDbType [fixed]
  Bug #16788 Only byte arrays and strings can be serialized by MySqlBinary [fixed]
  Bug #16645 FOUND_ROWS() Bug [can't repeat - added test case]
  Bug #18570 Unsigned tinyint (NET byte) incorrectly determined param type from param val	[fixed]
  Bug #19261 Supplying Input Parameters [fixed]
  Bug #19481 Where clause with datetime throws exception [any warning causes the exception] [fixed]
  Bug #15077 Error MySqlCommandBuilder.DeriveParameters for sp without parameters. [fixed]
  Bug #16934 Unsigned values > 2^63 (UInt64) cannot be used in prepared statements
  Bug #19515 DiscoverParameters fails on numeric datatype [fixed]
  Bug #17814 Stored procedure fails unless DbType set explicitly [fixed]
  Bug #19294 IDataRecord.GetString method should return null for null values [fixed]
  Bug #13590 ExecuteScalar returns only Int64 regardless of actual SQL type [added test case]
  Bug #19017 GetBytes Error [fixed]
  Bug #19936 DataReader already open exception [fixed]
  Bug #17106 MySql.Data.MySqlClient.CharSetMap.GetEncoding thread synchronization issue [fixed]
  Bug #17736 Selecting a row with with empty date '0000-00-00' results in Read() hanging. [fixed]
  Bug #20581 Null Reference Exception when closing reader after stored procedure. 
  Bug #16884 Invalid DateTime Values from DataReader     
  Bug #7248  There is already an open DataReader associated with this Connection which must 
  Bug #22400 Nested transactions     
  Bug #11991 ExecuteScalar 	
  Bug #14592 Wrong column length returned for VARCHAR UTF8 columns 
  Bug #18391 Better error handling for the .NET class "MySqlCommand" needed. 	
  Bug #8131 Data Adapter doesn't close connection 
  Bug #9619 Cannot update row using DbDataAdapter when row contains an invalid date 
  Bug #15112 MySqlDateTime Constructor 
	
Version 1.0.7

  Bugs fixed or addressed
  -------------------------
  Bug #13658 connection.state does not update on Ping() [ fixed ]
  Bug #13590 ExecuteScalar returns only Int64 regardless of actual SQL type [added test case]
  Bug #13662 Prepare() truncates accented character input [already fixed, added test]
  Bug #11947 MySQLCommandBuilder mishandling CONCAT() aliased column [updated test case]
  Bug #13541 Prepare breaks if a parameter is used more than once [fixed]
  Bug #13632 the MySQLCommandBuilder.deriveparameters has not been updated for MySQL 5
  Bug #13753 Exception calling stored procedure with special characters in parameters
  Bug #11386 Numeric parameters with Precision and Scale not taken into account by Connector [added test case]
  Bug #6902  Errors in parsing stored procedure parameters [fixed before, refixed]
  Bug #13927 Multiple Records to same Table in Transaction Problem [fixed]
  Bug #14631 "#42000Query was empty" [fixed]
  Bug #13806 Does not support Code Page 932	

  Other changes
  -------------------------    
  Failure to provide parameters for out and inout values is now detected
  Changed pooling code to remove issue of skipping Ping() on bogus connnections
    
Version 1.0.6
 
  Bugs fixed or addressed
  -------------------------
  Bug #13036  Returns error when field names contain any of the following chars %<>()/ etc [fixed]
  Bug #12835	1.0.5 won't install on system with 1.0.4 installed [fixed]
  Bug #12978 	Fatal Error C# Compilation [fixed]
  Bug #13276 	Exception on serialize after inserting null value [fixed]
  Bug #13345 	Connecting from mono 1.1.8 to MySQL 5.0 using MySQL Connector/Net 1.0.5

  Other changes
  -------------------------
  Changed SocketStream and StreamCreator to be compatible with Mono
  Added options to not reset and reconfigure connections pulled from the pool
  Connections pulled from the pool that are not reset are also not pinged

Version 1.0.5

	Bugs fixed or addressed
	-------------------------
	Bug #8667  	OUT parameters are not being valued [fixed]
	Bug #8574  	MySQLCommandBuilder unable to support inline functions [fixed]
	Bug #8509  	MySqlDataAdapter.FillSchema does not interpret unsigned integer	[fixed]
	Bug #8630  	Executing a query with the SchemaOnly option reads the entire resultset	[fixed]
	Bug #7398  	MySqlParameterCollection doesn't allow parameters without filled in names [fixed]
	Bug #7623  	Adding MySqlParameter causes error if MySqlDbType is Decimal [fixed]
	Bug #8929  	Timestamp values with a date > 10/29/9997 cause problems [fixed]
	Bug #9237  	MySqlDataReader.AffectedRecords not set to -1 [fixed]
	Bug #9262  	Floating point numbers boundary conditions (MinValue/MaxValue)
				(added code but really this isn't a bug)
	Bug #7951   Error reading a timestamp column 				
	Bug #10644  Cannot call a stored function directly from Connector/Net 	
	Bug #9722   Connector does not recognize parameters separated by a linefeed 
	Bug #10281  Clone issue with MySqlConnection 
	Bug #11450  Connector/Net, current database and stored procedures
	Bug
