2004-09-11 Francisco Figueiredo Jr. <fxjrlists@yahoo.com.br>
[mono.git] / mcs / class / Npgsql / ChangeLog
1 2004-09-11  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
2
3         * Npgsql/NpgsqlConnection.cs: 
4                 Dispose: Improved implementation. Also added warning logging for 
5                 NpgsqlConnection leakings.
6                 Close: Fixed code to allow calling many times even when being disposed.
7         * Npgsql/NpgsqlConnection.resx:
8                 Added new warning logging message for NpgsqlConnection leakings.
9         * Npgsql/NpgsqlConnector.cs:
10                 IsValid: new method to check if Connector is still valid.
11         * Npgsql/NpgsqlConnectorPool.cs:
12                 GetPooledConnector: Improved to check validity of Connector.
13                 FixPoolCountBecauseOfConnectionDisposeFalse: new method to fix the connection pool count
14                 because NpgsqlConnection leaking. This way, uses doesn't run out of connections from pool.
15
16
17
18
19 2004-09-07  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
20
21         * NpgsqlException.cs:  Added support for deserialization of NpgsqlException.
22
23         * NpgsqlState.cs: Added missing handling of NoData message.
24         
25
26 2004-07-02  Raja R Harinath  <rharinath@novell.com>
27
28         * Makefile (OVERRIDE_BARE_TARGETS): Remove.
29         ($(the_lib)): Make dependency explicit.
30
31 2004-06-28  Raja R Harinath  <rharinath@novell.com>
32
33         * Makefile (%.resources): Use $(RESGEN).
34
35 2004-06-22  Raja R Harinath  <rharinath@novell.com>
36
37         * Makefile: Use $(PLATFORM_PATH_SEPARATOR) in MONO_PATH.
38
39 2004-06-21  Raja R Harinath  <rharinath@novell.com>
40
41         * Makefile (LIBRARY_SNK): Sign with Npgsql/Npgsql.snk.
42
43 2004-06-18  Francisco Figueiredo Jr. <fxjrlists@yahoo.com.br>
44         * Synchronized files with gborg cvs up to release 0.6.
45
46 2004-05-29  Francisco Figueiredo Jr. <fxjrlists@yahoo.com.br>
47         * Npgsql/NpgsqlConnection.cs: Added workaround for redhat server versions.
48         It returns 7.3.4-RH as its server version. Thanks Jaroslaw Kowalski 
49 (jaak@zd.com.pl) for the patch.
50
51 2004-05-24  Francisco Figueiredo Jr. <fxjrlists@yahoo.com.br>
52         * Npgsql/NpgsqlConnection.cs: Fixed bug when handling Unicode connections.
53         Fixes Gborg bug 752.
54         Thanks stehule@kix.fsv.cvut.cz for the patch.
55
56 2004-05-23  Francisco Figueiredo Jr. <fxjrlists@yahoo.com.br>
57         
58         * Npgsql/NpgsqlConnection.cs: Fixed bug which prevented Npgsql to
59 connect to cvs built servers which had devel in its version string.
60         
61 2004-05-22  Francisco Figueiredo Jr. <fxjrlists@yahoo.com.br>
62
63         Npgsql/NpgsqlCommand.cs,
64         Npgsql/NpgsqlConnection.cs,
65         Npgsql/NpgsqlDataReader.cs,
66         Npgsql/NpgsqlException.cs,
67         Npgsql/NpgsqlTransaction.cs,
68         Npgsql/Design/ConnectionStringEditor.cs,
69         Npgsql/Design/ConnectionStringEditorForm.cs,
70         Npgsql/Design/NpgsqlParameterConverter.cs,
71         Npgsql/Design/NpgsqlParametersEditor.cs,
72         NpgsqlTypes/NpgsqlTypesHelper.cs: Commit log by 
73         Glen Parker (glenebob@nwlink.com): Bug #772 ("Using 
74         Command and Prepare adds single quotes to strings twice")
75         is fixed  :-)   It was broken when running on the version 3
76         protocol (extended query support) on PostgreSQL 7.4. 
77         Some of the files in Design were formatted with macintosh line 
78         terminators. This was screwing up the xmldoc generator in csc, 
79         so I reformatted to make it work.
80         I've added some essential xmldoc comments (<summary> tags).  Much work
81 remains here, but I wanted to get a few in on common functions and
82 properties.
83
84         The .build file will now generate the Npgsql.xml file, next to the .dll
85 file.  I removed the existing Npgsql.xml from CVS.
86
87         Thanks Glen Parker for this patch.
88
89
90 2004-05-20  Francisco Figueiredo Jr. <fxjrlists@yahoo.com.br>
91
92         NpgsqlAsciiRow.cs,
93         NpgsqlBackEndKeyData.cs,
94         NpgsqlBinaryRow.cs,
95         NpgsqlCommand.cs,
96         NpgsqlConnectedState.cs,
97         NpgsqlConnection.cs,
98         NpgsqlConnection.resx,
99         NpgsqlConnector.cs,
100         NpgsqlConnectorPool.cs,
101         NpgsqlError.cs,
102         NpgsqlMediator.cs,
103         NpgsqlMessageTypes.cs,
104         NpgsqlPasswordPacket.cs,
105         NpgsqlQuery.cs,
106         NpgsqlRowDescription.cs,
107         NpgsqlStartupPacket.cs,
108         NpgsqlState.cs,
109         PGUtil.cs,
110         NpgsqlTypes/NpgsqlTypesHelper.cs : - store protocol version as an enum, keep numbers as protocol specific
111         - split more protocol handlers between version 2 and version 3
112         - split MessageTypes class on ver2/ver3 and add remaining types for ver3        - removed handlers for deprecated protocol message types
113         - store BackendKeyData in its own member on Mediator
114         - Store ParameterStatus objects in a key map on Mediator
115         - Get backend version now from the Mediator if possible
116         - Rewrite parsers for server version and connection string
117         - Store server version numericially (in a new class ServerVersion)
118         - As usual, lots of code cleanup/commenting/etc.
119
120         Thanks very much Glen Parker (glenebob@nwlink.com) for this patch.
121
122 2004-05-20  Raja R Harinath  <rharinath@novell.com>
123
124         * Makefile (%.resources): Use INTERNAL_RESGEN.
125
126 2004-05-13  Francisco Figueiredo Jr. <fxjrlists@yahoo.com.br>
127
128         * Npgsql/NpgsqlHashAlgorithm.cs: Changed exception type from Exception t
129 o InvalidOperationException when calling the Hash property and hash value is nul
130 l. Thanks Gonzalo Paniagua Javier <gonzalo@ximian.com> for catching that.
131
132 2004-05-09  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
133         * HashAlgorithm.cs,
134         NpgsqlAsciiRow.cs,
135         NpgsqlBinaryRow.cs,
136         NpgsqlClosedState.cs,
137         NpgsqlCommand.cs,
138         NpgsqlCommandBuilder.cs,
139         NpgsqlConnection.cs,
140         NpgsqlDataReader.cs,
141         NpgsqlException.cs,
142         NpgsqlParameterCollection.cs,
143         NpgsqlReadyState.cs,
144         NpgsqlTransaction.cs: Improved exception handling. Now Npgsql throws mor
145 e meaningful exceptions instead of throw NpgsqlException which are now exclusive
146 ly to sign server errors. Thanks Glen Parker (glenebob@nwlink.com) for the patch.
147
148
149
150 2004-05-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
151
152         * Makefile:
153         * Npgsql.dll.resources: all the resources command line options are now
154         in a separate response file.
155
156 2004-05-04  Jaroslaw Kowalski <jaak@zd.com.pl>
157         * Npgsql/NpgsqlDataReader.cs: Fixed RecordsAffected to properly return -1 after "create table" and similar commands.
158
159 2004-05-01  Francisco Figueiredo Jr. <fxjrlists@yahoo.com.br>
160
161         * Npgsql/NpgsqlCommand.cs,
162         Npgsql/NpgsqlConnection.cs,
163         Npgsql/NpgsqlConnector.cs,
164         Npgsql/NpgsqlConnectorPool.cs,
165         Npgsql/NpgsqlError.cs,
166         Npgsql/NpgsqlException.cs,
167         Npgsql/NpgsqlParameterCollection.cs,
168         NpgsqlTypes/NpgsqlTypesHelper.cs: Improved exception support. Now NpgsqlException as well as NpgsqlError provide much more information. Thanks Glen Parker (glenebob@nwlink.com) for the patch.
169
170 2004-04-30  Todd Berman  <tberman@sevenl.net>
171
172         * Npgsql/AssemblyInfo.cs: use the proper path to the .pub file
173
174 2004-04-30  Duncan Mak  <duncan@ximian.com>
175
176         * Npgsql/AssemblyInfo.cs: Enable delay signing, using Npgsql.pub.
177
178         * Npgsql/Npgsql.pub: Added to CVS.
179
180 2004-04-21  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
181         * Npgsql/NpgsqlDataAdapter.cs: Changed RowUpdated and RowUpdating prefix to Npgsql.
182         * Npgsql/NpgsqlClosedState.cs: Removed dependency in TlsException. Carlos Guzman will change this excpetion to internal.
183
184         * Npgsql/NpgsqlCommand.cs
185         * Npgsql/NpgsqlCommand.resx
186         * Npgsql/NpgsqlConnection.cs
187         * Npgsql/NpgsqlConnection.resx
188         * Npgsql/NpgsqlDataAdapter.cs
189         * Npgsql/NpgsqlError.cs
190         * Npgsql/NpgsqlException.cs
191         * Npgsql/NpgsqlException.resx
192         * Npgsql/NpgsqlMediator.cs
193         * Npgsql/NpgsqlState.cs
194         * Npgsql/NpgsqlState.resx
195         * Npgsql/PGUtil.cs : Added initial error handling code improvements. Thanks Glen Parker (glenebob@nwlink.com) for the patch. NpgsqlException now gives aceess to error collection through the Errors property. This property return a collection of NpgsqlErrors objects. Also it gives access to error message, hint, severity and code. This fixes the feature request 689 in gborg.
196
197
198
199 2004-04-09  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
200         * Npgsql/NpgsqlDataAdapter.cs: Fixed DataAdapter to raise the RowUpdating and RowUpdated events. This also fixes some issues in gborg 710 bug. This modification may have broken CommandBuilder support. Working on that.
201
202 2004-03-28  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
203         * Npgsql/NpgsqlTransaction.cs: Fixed a bug where rollback was being called when disposing NpgsqlTransaction objects even when transaction was sucessfully commited. Fixes bug 725 in gborg. Thanks melkor (melkor@adinet.com.uy) for spotting that.
204
205 2004-03-28  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
206         * Npgsql/NpgsqlConnection.cs: Implemented IClonable interface in NpgsqlConnection class. Thanks Juliano Barbosa for pointing it out.
207
208 2004-03-22  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
209         * Npgsql/NpgsqlAsciiRow.cs
210         * Npgsql/NpgsqlBinaryRow.cs
211         * Npgsql/NpgsqlDataReader.cs: Fixed NpgsqlDataReader.IsDBNull(). It wasn't working for postgresql 7.4+. Thanks Glen Parker (glenebob@nwlink.com) for the patch.
212
213
214 2004-03-13  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
215
216         * Npgsql/NpgsqlConnection.cs:
217         * Npgsql/NpgsqlClosedState.cs: Added support for SSL callbacks points. Now, client applications can provide the callbacks. Npgsql provide a default callback implementation which always assumes the certificate is ok. This allows easy use as client don't need to provide callback to use ssl connections. This also fixes bug 705 in gborg.
218         * NpgsqlTypes/NpgsqlTypesHelper: Applied patch to correctly parse datetimes values with timezone information. Thanks Glen Parker <glenebob@nwlink.com> for the patch.
219         
220
221 2004-03-06  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
222
223         * Npgsql/NpgsqlConnectorPool.cs: Fixed bug 706 in gborg. Now Max timeout will be working correctly. Thanks Sami Kuhmonen <feenix@iqs.fi> for the patch.
224
225 2004-02-29  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
226         * Npgsql/NpgsqlConnection.cs: Better handling of connection encoding. Added support for encoding and connection timeout in connection string.
227         * Npgsql/NpgsqlConnectorPool.cs: Added support for timeout and max connection pool.
228
229 2004-02-28  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
230
231         * Npgsql/NpgsqlConnector.cs: Added support for connection encoding.
232         * Npgsql/NpgsqlConnection.cs: Better handling of connection encoding.
233         * Npgsql/NpgsqlCommand.cs: Fixed an Invalid Index error when executing ExecuteScalar() method with an empty resultset. Thanks Lynn A. Roth for the fix. This fixes bug 687 in gborg.
234
235
236 2004-02-25  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
237
238         * Npgsql/NpgsqlDataReader.cs: Fixed a OutOfBoundsException when trying to access an element after have read all elements. Now it throws an InvalidOperationException.
239
240         * Npgsql/NpgsqlConnection.cs: Fixed Unicode handling. This also fixes bug 695 in gborg. Thanks Sami Kuhmonen <feenix@iqs.fi> for the patch.
241
242  
243 2004-02-16  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
244
245         * Npgsql/NpgsqlDataReader.cs: Removed a log line which reduced the conne
246 ction startup time in 300 milliseconds.
247
248 2004-02-16  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
249
250         * NpgsqlConnection.cs: Added support for Unicode encoding. Fixes feature
251 request 534 on gborg. Thanks Ivar <ivar@lumisoft.ee> for pointing it out.
252
253 2004-02-16 Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
254
255         * Npgsql/NpgsqlStartupPacket.cs: Added code to set datestyle to iso when
256 connecting using protocol 3.0 version. Thanks Sami Kuhmonen <feenix@iqs.fi> for pointing it out.
257
258 2004-02-14  Francisco Figueiredo Jr.  <fxjrlists@yahoo.com.br>
259
260         * Npgsql/NpgsqlCommand.cs: Fixed a bug when handling queries which return no data. Thanks Morten Mertner <morten@mertner.com> for the fix.
261
262 2004-02-10  Francisco Figueiredo Jr. <fxjrlists@yahoo.com.br>
263         
264         * NpgsqlTypes/NpgsqlTypesHelper.cs: Added support for datetime and time datatypes with timezone data. Thanks Sami Kuhmonen (sami@iqs.fi).
265
266 2004-01-15  Jackson Harper <jackson@ximian.com>
267
268         * NpgslTypes/NpgsqlTypesHelper.cs: Add StringFixedLength type.
269         
270 2003-11-23  Pedro Mart�ez Juli� <yoros@wanadoo.es>
271
272         * Npgsql/HashAlgorithm.cs:
273         * Npgsql/NpgsqlClosedState.cs:
274         * Npgsql/NpgsqlCommand.cs:
275         * Npgsql/NpgsqlConnectedState.cs:
276         * Npgsql/NpgsqlConnection.cs:
277         * Npgsql/NpgsqlReadyState.cs:
278         * Npgsql/NpgsqlStartupState.cs:
279         * Npgsql/NpgsqlState.cs: Apply Disposable pattern, when using
280         ADO.NET we need to call Dispose after using any Component like
281         NpgsqlDataAdapter, NpgsqlConnection, etc... Change a few internal
282         methods to Properties.
283
284 2003-11-22  Pedro Mart�ez Juli� <yoros@wanadoo.es>
285
286         * Npgsql/NpgsqlClosedState.cs:
287         * Npgsql/NpgsqlConnectedState.cs:
288         * Npgsql/NpgsqlConnection.cs:
289         * Npgsql/NpgsqlReadyState.cs:
290         * Npgsql/NpgsqlState.cs: Changes related to the last update of SSL
291         implementation. Now we're using TcpClient for the connection and
292         Stream for the abstraction layer to SslClientStream.
293
294 2003-11-11  Pedro Mart�ez Juli� <yoros@wanadoo.es>
295
296         * Npgsql/NpgsqlDataReader.cs: GetSchemaTable has nothing to do with
297         CanRead because the schema can be readed with or without result
298         rows.
299
300 2003-11-10  Pedro Mart�ez Juli� <yoros@wanadoo.es>
301
302         * Npgsql/NpgsqlDataAdapter.cs: Best use "if" instead of try-catch.
303
304 2003-11-10  Pedro Mart�ez Juli� <yoros@wanadoo.es>
305
306         * Npgsql/NpgsqlDataAdapter.cs: Catch the exception thrown by MS.NET
307         when a mapping is not in the collection.
308
309 2003-11-09  Pedro Mart�ez Juli� <yoros@wanadoo.es>
310
311         * Npgsql/NpgsqlDataAdapter.cs: Do not assing the result of the
312         CommandBuilder to the local data. Local data should be null if the
313         client doesn't set them.
314
315         * Npgsql/NpgsqlCommandBuilder.cs: Mistake in param name fixed.
316
317 2003-11-09  Pedro Mart�ez Juli� <yoros@wanadoo.es>
318
319         * Makefile: Little fix for build the resources.
320
321         * Npgsql/NpgsqlCommandBuilder.cs: Added row version in delete
322         command.
323
324 2003-11-08  Pedro Mart�ez Juli� <yoros@wanadoo.es>
325
326         * Npgsql/NpgsqlCommand.cs: Removed try-catch for Resource Manager
327         calls, the problem is fixed.
328
329         * Makefile: Fix one bug in the build of resources.
330
331 2003-11-08  Pedro Mart�ez Juli� <yoros@wanadoo.es>
332
333         * Npgsql/NpgsqlCommandBuilder.cs: Added the command builder.
334
335         * Npgsql/NpgsqlDataAdapter.cs: Added the CommandBuilder stuff. When
336         OnRowUpdating is called we create the command necesary for updating,
337         inserting or deleting any row of the DataTable/DataSet.
338
339         * Npgsql/NpgsqlCommand.cs: Temporary try-catch. ResMan still doesn't
340         work. This must be removed when ResMan works.
341
342         * Npgsql/NpgsqlParameter: No more than one call to value.GetType()
343         is more efficient for the deep if structure types.
344
345 2003-11-07  Pedro Mart�ez Juli� <yoros@wanadoo.es>
346
347         * Npgsql/NpgsqlDataAdapter.cs: Fixed the mistake I did in the last
348         change. The Command objects must not be created in the constructor.
349         The Commands should be in the overrided method "OnRowUpdating".
350
351         * Npgsql/NpgsqlCommand.cs: Added two try-catch instructions to get
352         the proper exception (not MissingManifestResourceException). It is
353         thrown in MS.NET and in MONO. (Npgsql compiled with MCS).
354
355 2003-11-07  Pedro Mart�ez Juli� <yoros@wanadoo.es>
356
357         * Npgsql/NpgsqlDataAdapter.cs: Create new Command classes for the
358         different Insrt / Update / Delete commands.
359
360 2003-10-20  Pedro Mart�ez Juli� <yoros@wanadoo.es>
361
362         * Npgsql/NpgsqlClosedState.cs:
363         * Npgsql/NpgsqlConnection.cs:
364         * Npgsql/NpgsqlConnectedState.cs:
365         * Npgsql/NpgsqlReadyState.cs:
366         * Npgsql/NpgsqlState.cs: Changed the namespace for Tls, now the
367         namespace is Mono.System.Protocol.Tls, before was
368         System.Security.Tls.
369
370         * Npgsql/Makefile: Change reference from System.Security.Tls to
371         Mono.Security (now Tls lives there).
372
373 2003-10-16  Pedro Mart�ez Juli� <yoros@wanadoo.es>
374
375         * Npgsql/NpgsqlClosedState.cs:
376         * Npgsql/NpgsqlConnectedState.cs:
377         * Npgsql/NpgsqlConnection.cs: Changed TcpClient by TlsSession
378         because now it is used TlsSession and it doesn't work without
379         these changes.
380
381 2003-10-16  Pedro Mart�ez Juli� <yoros@wanadoo.es>
382
383         * Makefile: changed reference from Lib/System.Security.Tls.dll to
384         System.Security.Tls because the last will be installed before and
385         separatelly.
386
387         * Lib: Removed Lib directory, moved System.Security.Tls.dll to
388         Mono.Security.Tls library directory.
389
390 2003-10-15  Pedro Mart�ez Juli� <yoros@wanadoo.es>
391
392         * Makefile: fix building and the install objectives.
393
394 2003-04-26  Pedro Mart�ez Juli� <yoros@wanadoo.es>
395
396         * Npgsql/NpgsqlDataReader.cs: Change GetFloat and GetDouble. Now
397         they works as direct casting from GetValue.
398
399 2003-07-18  Peter Williams  <peter@newton.cx>
400
401         * Npgsql/AssemblyInfo.cs: Don't strongname the assembly, because
402         we can't unless corlib is strongnamed too. Not a wonderful solution,
403         but I don't think this ever worked anyway.
404
405 2003-05-25  Francisco Figueiredo Jr. <fxjrlists@yahoo.com.br>
406         * Npgsql/NpgsqlDataReader.cs: Fixed an invalid index exception when
407         processing 0 rows queries.
408
409 2003-04-26  Pedro Mart�ez Juli� <yoros@wanadoo.es>
410
411         * Npgsql/NpgsqlDataReader.cs: Now GetDateTime works for "dd/MM/yyyy"
412         date formats. I think that it's needed support to auto-detect
413         DateTime format through PgSql server configuration.
414
415 2003-01-28  Daniel Morgan <danmorg@sc.rr.com>
416
417         * Npgsql.build: got it to work for Windows build
418         
419         * Npgsql/Npgsql.build
420         * Npgsql/Npgsql.cmbx 
421         * Npgsql/Npgsql.prjx: removed files not needed
422
423 2003-01-28  Daniel Morgan <danmorg@sc.rr.com>
424
425         * added the Npgsql (Npgsql is a .Net Data Provider for PostgreSQL)
426           from http://gborg.postgresql.org/project/npgsql/projdisplay.php
427           by adding the following files and directories to the mcs module
428           in mono-cvs.ximian.com at mcs/class:
429       
430       Npgsql (directory)     
431       ChangeLog    
432       Makefile  
433       Npgsql.build  
434       RELEASENOTES.txt  
435       TODO.txt  
436       makefile.gnu
437       LICENSE.txt  
438       README.txt
439       STATUS.txt
440       list
441           Npgsql/Npgsql (directory)
442           Npgsql/AssemblyInfo.cs
443           Npgsql/NpgsqlAsciiRow.cs
444           Npgsql/NpgsqlBackEndKeyData.cs
445           Npgsql/NpgsqlClosedState.cs
446           Npgsql/NpgsqlCommand.cs
447           Npgsql/NpgsqlConnectedState.cs
448           Npgsql/NpgsqlConnection.cs
449           Npgsql/NpgsqlConnector.cs
450           Npgsql/NpgsqlConnectorPool.cs
451           Npgsql/NpgsqlDataAdapter.cs
452           Npgsql/NpgsqlDataReader.cs
453           Npgsql/NpgsqlEventLog.cs
454           Npgsql/NpgsqlException.cs
455           Npgsql/NpgsqlMediator.cs
456           Npgsql/NpgsqlMessageTypes.cs
457           Npgsql/NpgsqlParameter.cs
458           Npgsql/NpgsqlParameterCollection.cs
459           Npgsql/NpgsqlPasswordPacket.cs
460           Npgsql/NpgsqlQuery.cs
461           Npgsql/NpgsqlReadyState.cs
462           Npgsql/NpgsqlResultSet.cs
463           Npgsql/NpgsqlRowDescription.cs
464           Npgsql/NpgsqlStartupPacket.cs
465           Npgsql/NpgsqlStartupState.cs
466           Npgsql/NpgsqlState.cs
467           Npgsql/NpgsqlTransaction.cs
468           Npgsql/PGUtil.cs
469